【发布时间】:2011-08-09 13:15:06
【问题描述】:
在 Java 中将顶级类设为非公开的原因是什么?
假设我们有Foo.java,可能有
class Foo {
}
或
public class Foo {
}
我知道前一个示例会存在一些类可见性问题(可能从其他包中看不到)。但无论如何,有什么理由可以让某人像第一个代码示例中那样做吗?
UPD:我在前一个解决方案中看到了什么缺点:没人关心它是 non-public。该类稍后可以由同一包中的其他 public 类简单地扩展,然后,该类的非公共部分可能会给您带来可见性/访问问题。
【问题讨论】:
-
因为如果没有必要,为什么还要在上面放额外的代码呢~
标签: java