java - protected 访问修饰符

标签 java protected

JLS 6.6.2为我们提供了对 protected 成员的包访问的以下限制。

A protected member or constructor of an object may be accessed from outside the package in which it is declared only by code that is responsible for the implementation of that object.

负责实现是什么意思?你就不能举个例子吗?

最佳答案

这意味着您无法访问同一类的不同实例的 protected 父类(super class)成员。

package one;
public class A {protected int b;}

package two;
public class B extends A {

    public void someMethod (A other)
    {
        b = 5; // allowed
        other.b = 5; // not allowed
    }
}

关于java - protected 访问修饰符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31050527/

相关文章:

java - 为什么我在intellij-idea中运行代码但在eclipse上运行时扫描仪不接受输入

java - 只能被自己的类或其他子类调用的Java方法

c++ - 通过此指针调用 protected 基类方法并转换为派生类中的基类 (C++)

c# - protected 内部

java - 重用缓存的 spring 上下文来构建更大的上下文

Java eclipse IDE线速调试

java - 为什么java还接受 ""和 ' '之外的unicode?

java - 如何在 Android 中更好地安排我的 SQLite 数据库类

java - Java 中重写的方法可见性