Java抽象类和接口的区别

一、成员区别:

  抽象类:

    成员变量:可以变量、也可以常量

    构造方法:有

    成员方法:可以抽象、也可以非抽象

  接口:

    成员变量:只可以常量

    构造方法:无

    成员方法:只可以抽象

二、关系区别:

  类与类:

    继承:单继承

  类与接口:

    实现:单实现、多实现

  接口与接口:

    继承:单继承、多继承

三、设计理念区别

  抽象类:被继承体现的是 "is a" 的关系,抽象类中定义的是该继承体系的共性功能。

  接  口: 被实现体现的是 "like a" 的关系,接口中定义的是该继承体系的扩展功能。  

posted @ 2015-06-09 16:23  Self_improve  阅读(181)  评论(0编辑  收藏  举报