用子类创建一个对象,并把这个对象的引用放到父类的对象中。
如:
//Animal是Tiger的父类
Animal a;
a = new Tiger();
对象的上转型对象的实体是子类负责创建的,但上转型对象会失去原对象的一些属性和功能。
上转型对象不能操作子类新增的成员变量和新增的方法。
上转型对象示意图
例题
A 派生出子类 B , B 派生出子类 C ,并且在 java 源代码有如下声明:
1. A a0=new A();
2. A a1=new B();
3. A a2=new C();
问以下哪个说法是正确的?()A. 只有第一行能通过编译
B. 第1、2行能通过编译,但第3行编译出错
C. 第1、2、3行能通过编译,但第2、3行运行时出错
D. 第1行,第2行和第3行的声明都是正确的答案:D