java如何访问子类的数据
时间: 2024-10-08 17:19:53 浏览: 24
在 Java 中,如果你有一个父类引用指向子类的对象,你可以通过父类类型的变量来访问子类的数据,这是因为 Java 支持向上转型(Upcasting)。这种方式允许你在运行时确定实际对象的类型,并可以调用其实现的相关方法。
例如:
```java
// 定义父类和子类
class Parent {
int parentData;
}
class Child extends Parent {
String childData;
}
// 创建子类对象并赋值给父类引用
Parent parent = new Child();
// 访问子类数据
parent.parentData; // 只能访问到父类的成员,不会看到子类特有的 'childData'
parent.childData = "This is child data"; // 子类的数据也能间接访问,因为它是父类的一部分
// 如果需要明确访问子类特性,可以使用强制类型转换 (downcasting)
Child child = (Child) parent; // 将父类引用强制转换成子类类型
System.out.println(child.childData); // 现在可以直接访问子类的 'childData'
```
阅读全文