是不是“包私人”成员访问与默认(同上)的代名词
我对某些文档使用的术语“软件包专用”以及“默认访问”的用法有点困惑。 不是包私有和默认访问都是受保护的同义词吗?
是的,它几乎是一样的。 受保护的修饰符指定该成员只能在其自己的包内访问(与包私有一样), 另外 ,还可以在另一个包中访问该类的子类。
“默认”访问修饰符(它们都没有明确给出)是“包私有”,这意味着只有同一包中的东西才能访问它们。 然而,在同一个软件包中,对类之间的继承关系没有任何意义 - 它纯粹是一种命名约定。
“受保护”意味着不仅是同一包中的类,还有子类(不管这些子类在哪个包中)都可以访问它。
类的默认访问是包私有的,但接口成员的默认访问是公共的。
例如
public interface I {
int A = 1;
// same as
public static final int A = 1;
void method();
// same as
public abstract void method();
class C { }
// same as
public static class C { }
}
接口的默认访问规则与类不同。
链接地址: http://www.djcxy.com/p/4109.html上一篇: Isn't "package private" member access synonymous with the default (no