abstract class与interface

以定义一个类的结构来对比

1.一个类只能继承一个父类,但可以继承多个接口

2.抽象类中可以有变量,且可以在子类中改变.接口中只能有final变量

3.抽象类中可以有方法体且可以实现,方法不一定全部是抽象方法;接口只有方法的定义,且都是抽象方法

4.接口可看更抽象的抽象类

 

abstract class的应用场合

一句话,在既需要统一的接口,又需要实例变量或缺省的方法的情况下,就可以使用它。

 

 

向上转型

概念:子类转成父类为向上 转型.

父类  obj=new  子类();

向上转型时,父类指向子类引用对象会遗失除与父类对象共有的其他方法,也就是在转型过程中,子类的新有的方法都会遗失掉,在编译时,系统会提供找不到方法的错误。