我偶然发现了一个小型图书馆,它有四个包中的一些类和一个应该由谁使用这个图书馆使用的基本类。图书馆设计 - 限制使用“实习生”班/方法的模式
我不得不查看这个库,并建议应该限制对某些类和方法的访问,因为用户应该只看到他真正应该使用的方法/类。在这种情况下,它应该是一个可以调用几个方法的类。
虽然我的建议刚进入我的脑海,但我无法得到一个真正的解决方案,如何做到这一点。
第一个丑陋的想法是:把公共课程放在包a
和其他所有包在a.b
这不是一个好主意。
封装结构阻止protected
修饰符,因为包a.b
中的类需要调用来自包a.c
中的类中的方法。那么是否有一种模式可以用来防止某人在a.b
中实例化一个类并调用它们的公共方法?
如果对问题的描述不够好,请随时在评论中提问。谢谢。
我们这样做,因为这可能是最好的工作/效果关系也@dimitrisli也有一个很好的解决方案(两个都+1) – WarrenFaith 2011-12-22 14:57:59