当类具有默认访问修饰符时,使用公共方法有什么用?

至于我的观察,当类本身具有默认访问修饰符时,在其中使用公共方法有什么用处。 java编译器可能已停止使用默认类中的公共方法。 有什么理由吗?

一个原因:如果您的类实现了一些接口(或者使用抽象的公共方法扩展了一些抽象类),那么您可能不会降低这些实现方法的可见性。

非公共类可能实现公共接口。 这意味着包之外的类无法创建此类的实例或创建该类型的引用,但如果传递实例,它们仍然可以在其上调用方法。

例如,公共工厂类可能会在其包中创建非公共类的实例并将其返回。

它将安全性和可用性完美结合在一起。

如果我希望它具有默认访问权限(如果我没有其他包可以使用它或更好地更改代码)并将方法标记为public,那么我将标记具有默认访问权限的类,我正在使所有其他方法可访问该方法类,无论它们属于哪个包。

这有什么帮助? 一个足够安全的类,可以执行所有复杂的代码实现,并且可用于将输出提供给想要使用它的用户。

怎么会有人用它? 那么你编写代码来帮助他们通过创建扩展这个默认类的公共类来使用它。 您在任何包中实例化此公共子类(在导入过程之后),并且所有方法都标记为public。

你有一个课堂,它可以让你的每个人都可以使用你的魔法,而不会给别人一些关于你如何完成它的暗示!