接口和抽象类的比较
2015-01-09 17:12
246 查看
概念上的比较
接口和抽象类的概念不一样。接口是对行为的抽象,抽象类是对根源的抽象。也就是说抽象类表示的是,这个对象是什么。接口表示的是,这个对象能做什么。语法上的比较
1. 抽象类可以有自己的数据成员,也可以有非abstarct的成员方法,而接口只能够有静态的 不能被修改的数据成员(也就是必须是static final的,不过在interface中一般不定义数据成员),所有的成员方法都是abstract的。从某种意义上说,interface是一种特殊形式的abstract class。2. 在abstract class的定义中,我们可以赋予方法的默认行为。但是在interface的定义中,方法却不能拥有默认行为.( java 8 已经可以实现接口方法的默认行为了)
3. 接口可以多继承,抽象类不行
用法
当你关注一个事物的本质的时候,用抽象类;当你关注一个行为的时候,用接口。相关文章推荐
- 抽象类和接口的比较
- 比较C#中抽象类(abstract class)和接口(interface)的异同
- c#接口和抽象类比较
- 抽象类与其他内容的区别比较,与接口的相似及差别
- java 抽象类和接口比较
- 抽象类和接口的学习比较心得
- C++虚函数与JAVA中抽象函数比较 接口与抽象类比较
- interface(接口)与abstract class(抽象类)的区别;实例比较;
- C++虚函数virtual,纯虚函数pure virtual和Java抽象函数abstract,接口interface与抽象类abstract class的比较
- C#中类、抽象类、接口的比较
- 接口和抽象类的比较
- 抽象类和接口的比较(重点)
- 黑马程序员_抽象类和接口的比较
- 接口和抽象类什么时候使用比较合适?
- 抽象类和接口的使用比较(举例)
- 菜鸟C#成长记——小议接口和抽象类比较
- Java 接口和抽象类的比较以及相关性 (转)
- 面向对象(多态,抽象类,接口的比较)
- 内部类,接口,抽象类 比较(11)
- 初步接触接口设计模式以及接口和抽象类的比较