如何在Java中定义受保护的函数

受保护的函数在 java 中可以使用 protected 修饰符定义,允许子类和同一个包中的类访问。它比包可见性更具可见性,但限制了不同包中类的访问。语法为:protected 修饰符名称(参数列表) { // 函数体}。

如何在Java中定义受保护的函数

如何在 Java 中定义受保护的函数

Java 中,受保护(protected)访问控制权限修饰符用于限制方法或字段的可见性,使其仅对子类和同一个包中的其他类可见。这提供了比默认包可见性更高的可见性,同时又阻止了不同包中的类访问。

语法

protected 修饰符名称(参数列表) {
  // 函数体
}

实战案例

考虑以下示例:

class Parent {
    protected void printParent() {
        System.out.println("我是 Parent 类。");
    }
}

class Child extends Parent {
    public void printChild() {
        printParent();  // 可以访问 protected 方法
        System.out.println("我是 Child 类。");
    }
}

class OtherClass {
    public void printOther() {
        // 无法访问 protected 方法
        // printParent();  // 编译错误
        System.out.println("我是 OtherClass 类。");
    }
}

public class Main {
    public static void main(String[] args) {
        Parent parent = new Parent();
        // 无法访问 protected 方法
        // parent.printParent();  // 编译错误

        Child child = new Child();
        child.printChild();

        OtherClass other = new OtherClass();
        other.printOther();
    }
}

输出

我是 Parent 类。
我是 Child 类。
我是 OtherClass 类。

在这个例子中:

  • printParent() 方法是受保护的,只能被 Parent 类及其子类 (Child) 访问。
  • 其他类(例如 OtherClass)无法访问受保护的方法。

以上就是如何在Java中定义受保护的函数的详细内容,更多请关注其它相关文章!