Java包私有类的优缺点?
我最近正在学习Java,并且遇到了package-private
类的概念,如果我们不指定任何内容,这是默认的。但是后来我意识到:
我很少看到package-private类的使用。是否有这个原因,例如,它有严重的缺点,它是多余的,或者仅仅是我阅读不足?是否有反对使用它的有力论据?
如果在大多数情况下确实没有用,为什么要使用默认值?
在实际情况下,我们应该在什么情况下使用package-private?即,什么时候它将变得不可替代?
换句话说,默认的package-private修饰符的主要利弊是什么?
回答:
简短的答案是-它是私有形式的一种。
我假设你熟悉的区别public
和private
,以及为什么它通常是很好的做法,使方法和变量private
,如果他们要单独用于内部问题的类。
好吧,作为对此的扩展-如果您正在考虑以模块化方式创建软件,则可以考虑 模块 的公共接口,该 模块
内部将具有多个相互协作的类。在这种情况下,public
如果要由消费者调用方法,则完全有道理。private
如果他们在班级内部;以及package
private是否使用它们在此模块中的类之间进行调用,即它是模块的实现细节(如公共调用者所见),但跨越多个类。
实际上很少使用这种方法,因为包装系统对于这种事情并不是那么有用。您必须将给定模块的所有类都转储到完全相同的程序包中,对于那些不重要的事情,这将变得有些笨拙。因此,这个主意很棒-
使一个方法只能供少数“附近”类访问,private
而后者要稍宽一些-但对如何定义该类集的限制意味着该方法很少使用/有用。
以上是 Java包私有类的优缺点? 的全部内容, 来源链接: utcz.com/qa/427466.html