父类对象new子类对象
Animal b = new Dog();
如上,对象b调用属性的时候调用父类属性,将对象b调用方法的时候调用子类的方法。
class Animal{
}
class Dog extends Animal{
}
public class Test4 {
public static void main(String[] args) {
Animal a = new Animal();
Animal b = new Dog();
System.out.println(a instanceof Animal);
System.out.println(a.getClass());
System.out.println(b.getClass());
//先用的子类的方法所以调用的是子类的getClass
System.out.println(a.getClass() .equals(b.getClass()));
}
}
输出结果
由于先调用子类的方法所以,对象b 的类的类型是子类的类类型Dog.
版权声明:本文为qq_44147882原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。