【发布时间】:2012-11-07 11:29:49
【问题描述】:
我有一个负责管理某种对象的管理器类。为此,它需要操作这些对象,但这些对象与管理器没有任何关系,因此从技术上讲,它们位于单独的包 "project.managers" 和 "project.objects" 中。重要的是,有问题的对象只能由管理人员操作,不能在其他任何地方操作,但需要项目中的每个其他类都可以访问。
因此,我希望管理人员能够访问操作方法,但限制对其他所有类的访问。最明显的一种是将管理器类和对象类移动到同一个包中,并声明操作方法受保护,但由于管理器和对象是完全独立的实体,它们在哲学上不适合。
(这部分是因为我希望我的 IDE 在我自动完成相关对象上的代码时停止向我显示操作方法,所以我总是必须通过管理器进行路由,以便在我更改对象时正确更新相应的表有问题)。
对此有什么想法吗?或者在任何情况下明显的方式是最好的?
【问题讨论】:
标签: java package theory access-specifier