// 定义一个基类,其中包含一个受保护的成员变量和方法
class Base {
// 受保护的成员变量,只有该类及其子类可以访问
protected int value;
// 受保护的方法,只有该类及其子类可以访问
protected void display() {
System.out.println("Value: " + value);
}
}
// 定义一个派生类,继承自Base类
class Derived extends Base {
// 子类可以访问父类中的protected成员
public void setValue(int val) {
value = val;
}
// 子类可以重写父类中的protected方法
@Override
public void display() {
System.out.println("Derived Value: " + value);
}
}
public class Main {
public static void main(String[] args) {
// 创建派生类对象
Derived d = new Derived();
// 设置值并调用显示方法
d.setValue(10);
d.display(); // 输出: Derived Value: 10
// 尝试在外部直接访问protected成员(会报错)
// d.value = 20; // 编译错误,因为value是protected,不能在类外直接访问
}
}
protected 关键字用于定义成员变量或方法,使其可以被同一包中的类以及不同包中的子类访问。Base 类中的 value 和 display() 方法都是 protected 的,因此它们可以在 Derived 类中被访问和重写。Main 类中直接访问 value,编译器将抛出错误,因为 value 是 protected 的,不能在类外部直接访问。上一篇:java main
下一篇:java web应用开发
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站