【问题标题】:Difference between a "public" class and an unmodified class? [duplicate]“公共”类和未修改类之间的区别? [复制]
【发布时间】:2012-05-22 00:55:27
【问题描述】:

可能重复:
package visibility
Java - The difference between class “ClassName” and public class “ClassName”

基本上这两个类的修饰符有什么区别吗?没有public修饰符有什么区别吗?

public class MyClass {}

class MyClass {}

【问题讨论】:

标签: java class access-modifiers


【解决方案1】:

public 类对任何其他类都是可见的,而 class(不带修饰符)将具有包可见性。

【讨论】:

    【解决方案2】:
    【解决方案3】:

    来自Java-Specification:

    如果一个类或接口类型被声明为 public,那么它可以被任何代码访问,只要声明它的编译单元(第 7.3 节)是可观察的。

    如果顶级类或接口类型未声明为 public,则只能从声明它的包中访问它。

    【讨论】:

      【解决方案4】:

      1.Public 类可以从其 包 外部访问,而类不能。
      2.源文件中只能有一个公共类,并且源文件的名称必须相同。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-11-11
        • 2016-09-20
        • 1970-01-01
        • 2017-08-11
        • 2013-07-27
        • 1970-01-01
        相关资源
        最近更新 更多