最近对将子类对象赋值给父类对象有点心得,想和大家分享一下,但本人水平有限,请各位指正和批评。言归正传,下面是几个小例子,请大家看一看。
测试一
父类:
public class Supclass {
public void print() {
System.out.println("this is 父类print()方法" + "——此时对象" + this.toString());
}
}
子类:
public class Subclass extends Supclass {
public static void main(String[] args) {
Supclass sup = new Subclass();
sup.print();
System.out.println("此时对象" + sup.toString());
}
}
结果:this is 父类print()方法——此时对象是Subclass@126b249
此时对象是Subclass@126b249
说明:
Supclass sup=new Subclass();
虽然声明的对象是父类对象,但实际的内存空间是子类对象的。
继承父类的方法public void print()被调用,