在Java中,父类引用可以指向子类对象,这是多态的体现。父类引用指向子类对象时,只能访问父类中定义的属性和方法,而无法访问子类特有的属性和方法。
举个例子:
class Animal { public void eat() { System.out.println("Animal is eating"); } } class Cat extends Animal { public void meow() { System.out.println("Cat is meowing"); } } public class Main { public static void main(String[] args) { Animal animal = new Cat(); // 父类引用指向子类对象 animal.eat(); // 输出 "Animal is eating" // animal.meow(); // 编译错误,无法访问子类特有的方法 } }
在上面的例子中,父类Animal的引用animal指向子类Cat的对象,可以调用父类的方法eat,但无法调用子类特有的方法meow。