子类转为父类,实际上是舍去一些属性,但是用了重写后的新成员
public class 中共1.0{
int 职务;
public void 纲领(){
1.0
}
}
public class 中共2.0 extends 中共1.0{
int 职务;
int 新职务;
public void 纲领(){
2.0
}
}
main{
中共2.0 党2.0 = new 中共2.0();
中共1.0 党1.0 = new 中共1.0();
党1.0 = 党2.0;
//此时的党1.0失去了新职务,但是纲领变为新的
}
上转型(可以是接口)只能调用重写的方法,不能调用新增的方法。
定义了一个接口却 new了一个类的时候,要用这个类的非重写方法,就要转换成类的类型。