java 程序中的“世界”访问级别是什么?

qaz*_*qaz 2 java oop public

Access Levels
Modifier        Class   Package Subclass    World
public            Y       Y       Y          Y
protected         Y       Y       Y          N
(Default)         Y       Y       N          N
private           Y       N       N          N
Run Code Online (Sandbox Code Playgroud)

“世界”访问级别是什么?它与包访问级别有何不同?

编辑:我的错。有一个谬论,即程序中的所有代码都在一个包中。

Mar*_*mic 5

这直接来自Java 教程

访问级别

Modifier    Class   Package Subclass    World

public      Y       Y       Y           Y
protected   Y       Y       Y           N
no modifier Y       Y       N           N
private     Y       N       N           N
Run Code Online (Sandbox Code Playgroud)

第一个数据列指示类本身是否有权访问访问级别定义的成员。正如您所看到的,类始终可以访问其自己的成员。第二列指示与该类位于同一包中的类(无论其出身如何)是否有权访问该成员。第三列指示在此包之外声明的类的子类是否有权访问该成员。第四列指示是否所有类都可以访问该成员。

“world”的范围实际上是“一切”——任何类,无论它属于哪个包,都可以访问使用访问修饰符声明的类public

与此对比protected,这意味着包内的类和受保护类的子类(无论包如何)都可以访问该类。