我对某些文档使用的“私有包”一词以及“默认访问”的使用感到有些困惑。包私有和默认访问不是保护的同义词吗?
是的,几乎一样。受保护的修饰符指定了构件只能在其自己的封装件内被访问的(与包专用)和, 另外 ,通过其类的另一个包的子类。
问题内容: 如果我没有明确声明,方法或实例变量的默认访问修饰符是什么? 例如: 此构造函数的访问修饰符是受保护的还是打包的?同一包(即)中的其他类可以调用此构造函数吗? 问题答案: 如果一个类没有修饰符(默认值,也称为),则它仅在其自己的包中可见(包被命名为相关类的组,你将在以后的课程中对其进行了解。) 在,你也可以像顶级类一样使用修饰符或(),并且含义相同。
问题内容: 是在类级别还是在对象级别的私有成员访问权限。如果是在对象级别,则以下代码不应编译 请说明在sub的messWithI()方法中访问obj的成员i是否有效 问题答案: 正如DevSolar所说的,它处于(顶级)类级别。 从Java语言规范的6.6节开始: 否则,如果将成员或构造函数声明为私有,则仅当访问发生在包含成员或构造函数的声明的顶级类(第7.6节)的主体内时,才允许访问。 请注意,
问题内容: 谁能解释一个 明确的无参数构造函数 (和其他构造函数)的默认访问修饰符是什么? 问题答案: 构造函数在这方面与方法相同-如果您未提供显式的public,private或protected,则构造函数将获得默认的“ package private”可见性。可以从同一类或同一包中的任何其他类中调用它,但不能从不同包中的子类中调用(因此,如果一个类仅具有包可见的构造函数,则任何子类都必须位于
JAVA访问修饰符的可访问性 公众 在 同一班级 同一套餐 子类 宇宙/其他软件包 我在互联网上寻找这些问题的答案,因为我有多个答案。一个视频说未声明的访问修饰符是公共的,而我看到另一个书面来源说未声明的访问修饰符在子类和其他包中没有限制。试图确认哪个是真的。
问题内容: 在Objective-C实例数据可以是,或。例如: 在Swift参考中,我还没有提到访问修饰符。是否有可能限制Swift中数据的可见性? 问题答案: 从 Swift 3.0.1开始 ,共有 4级访问权限 ,从最高(最低限制)到最低(最高限制)进行描述。 1. 和 允许在定义模块(目标)之外使用实体。指定框架的公共接口时,通常使用或访问。 但是, 访问权限仅适用于类和类成员,它与访问不同
主要内容:私有(Private)成员,实例,保护(Protected)成员,实例,公共(Public)成员,实例,作用域保护,实例Scala 访问修饰符基本和Java的一样,分别有:private,protected,public。 如果没有指定访问修饰符,默认情况下,Scala 对象的访问级别都是 public。 Scala 中的 private 限定符,比 Java 更严格,在嵌套类情况下,外层类甚至不能访问被嵌套类的私有成员。 私有(Private)成员 用 private 关键字修饰,带