Java 如何获取类中的 protected 变量

在 Java 中,protected 是一种访问修饰符,用于指定成员(字段、方法、构造函数等)的可见性。protected 修饰的成员在同一个包内可见,以及在其他包的子类中可见。本文将介绍如何在 Java 中获取类中的 protected 变量。

1. 创建一个包含 protected 变量的类

首先,我们需要创建一个包含 protected 变量的类。下面是一个示例:

package com.example;

public class MyClass {
    protected String myProtectedVariable = "Hello, protected variable!";
}

在上面的代码中,我们创建了一个名为 MyClass 的类,并声明了一个 protected 的字符串变量 myProtectedVariable

2. 创建一个子类来访问 protected 变量

为了访问 protected 变量,我们需要创建一个子类,并在子类中访问该变量。下面是一个示例:

package com.example;

public class MyChildClass extends MyClass {
    public void printProtectedVariable() {
        System.out.println(myProtectedVariable);
    }
}

在上面的代码中,我们创建了一个名为 MyChildClass 的子类,并在该子类中定义了一个名为 printProtectedVariable 的方法。这个方法打印出了父类的 protected 变量 myProtectedVariable

3. 创建一个测试类来调用子类的方法

为了验证我们的代码是否有效,我们需要创建一个测试类来调用子类的方法。下面是一个示例:

package com.example;

public class Main {
    public static void main(String[] args) {
        MyChildClass myChildClass = new MyChildClass();
        myChildClass.printProtectedVariable();
    }
}

在上面的代码中,我们创建了一个名为 Main 的测试类,并在 main 方法中创建了一个 MyChildClass 的实例 myChildClass。然后调用 myChildClassprintProtectedVariable 方法来打印父类的 protected 变量。

结论

通过创建一个包含 protected 变量的类,并在子类中访问该变量,我们可以获取类中的 protected 变量。在上面的示例中,我们使用了继承关系来实现对 protected 变量的访问,但请注意,这种方式只适用于子类中访问父类的 protected 变量。如果我们想从同一个包中的其他类中访问 protected 变量,可以直接访问它。

甘特图

下面是一个使用 Mermaid 语法表示的甘特图,展示了上述步骤的执行顺序以及时间:

gantt
    dateFormat  YYYY-MM-DD
    title Java 获取 protected 变量流程

    section 创建类
    创建一个包含 protected 变量的类      : done, 2022-01-01, 1d

    section 创建子类
    创建一个子类来访问 protected 变量      : done, after create class, 1d

    section 创建测试类
    创建一个测试类来调用子类的方法      : done, after create child class, 1d

参考

  • [Java Tutorials - Controlling Access to Members of a Class](