java中的接口和抽象类的区别

1、接口从用户的角度(使用实现的代码)看问题。

2、接口由编译器强制的一个模块间协作的合约。

3、无成员变量。

4、成员函数只能声明不能实现,(jdk1.8中的default 方法可以有方法体)。

 

接口和抽象类的区别:

1、抽象类可以有成员变量,

2、可以有部分实现;

3、抽象类不可以多继承,接口可以;

4、使用抽象类是使用继承的方式,但是只能单继承, 而接口是使用实现的方式实现的,并且可以多重实现;

5、从用户的角度看问题, 强调合约,强制协作的双方不能犯错。

 

posted @ 2017-10-27 22:48  诺-诺  阅读(159)  评论(0编辑  收藏  举报