Java父类数组装子类实例
时间: 2023-08-15 08:03:08 浏览: 89
在Java中,一个父类数组可以装载子类的实例对象。这是因为子类继承了父类的属性和方法,因此子类的实例对象也可以看作是父类的实例对象。
下面是一个简单的示例代码,演示了如何将一个父类数组装载子类实例对象:
```java
public class Animal {
public void eat() {
System.out.println("Animal is eating.");
}
}
public class Dog extends Animal {
@Override
public void eat() {
System.out.println("Dog is eating.");
}
}
public class Test {
public static void main(String[] args) {
Animal[] animals = new Animal[2];
animals[0] = new Animal();
animals[1] = new Dog();
for (int i = 0; i < animals.length; i++) {
animals[i].eat();
}
}
}
```
在此示例中,我们定义了一个Animal类和一个Dog类,Dog类继承自Animal类。在main方法中,我们创建了一个Animal类型的数组,然后将数组的第一个元素设置为Animal类的实例对象,第二个元素设置为Dog类的实例对象。最后,我们遍历该数组并调用每个元素的eat方法,可以看到,数组中的两个元素都能够正确地调用各自的eat方法。
需要注意的是,当我们使用父类数组装载子类实例对象时,只能调用父类中定义的方法和属性,不能直接调用子类中新增的方法和属性。如果需要调用子类中新增的方法和属性,需要进行类型转换。
阅读全文