1、对象的多态性
2、向上转型,限制功能使用,为了提高扩展性
向下转型,为了使用子类的特有功能
3、例如
class A{
void show(syso("a")){
}}
class B extends A{
void show2(){
}
void show{
syso("b")}
}
使用时,A x = new B();
x.show()----输出是b
要想调用show2,则必须将x向下转型,(B)x.show2();
总结:
1、对象的多态性
2、向上转型,限制功能使用,为了提高扩展性
向下转型,为了使用子类的特有功能
3、例如
class A{
void show(syso("a")){
}}
class B extends A{
void show2(){
}
void show{
syso("b")}
}
使用时,A x = new B();
x.show()----输出是b
要想调用show2,则必须将x向下转型,(B)x.show2();
总结: