日期:2014-05-20  浏览次数:20941 次

关于“向上转型”
向上转型的具体作用是什么?

子类既然继承的基类,就可以调用基类的方法了。

为啥还搞个向上转型啊

------解决方案--------------------
向上转型是把子类当做父类用。

使父类可以调用子类重写过的方法。

如:
class Sp{
public void sayHi(){
Systemout.println( "Sp hi~ ");
}
}

class S1 extends Sp{
public void sayHi(){
Systemout.println( "S1 hi~ ");
}
}

class S2 extends Sp{
public void sayHi(){
Systemout.println( "S2 hi~ ");
}
}

public class Test{
public static void main(String[] args){
Sp sp = new Sp();
Sp sp1 = new S1();//这就是向上转型
Sp sp2 = new S2();//这就是向上转型

sp.sayHi();
sp1.sayHi();//sp1与sp2都是 Sp类型的,可是却可以有不同的输出
sp2.sayHi();

}
}
------解决方案--------------------
多态
------解决方案--------------------
层叠开发的优点就是,不用费除原来的资源,同时对后期维护降低成本。

A《--B
A是基类,需要寻径业务
但是B业务发生变化,但是还是寻径业务,功能一致,只是实现方式不同。那么需要实现C
A《--C
所以在调用的时候只要调用A就可减少维护的成本。
同时这也是业务升级或是回调的最好方法。
------解决方案--------------------
lz,把向上转型理解错了!