jdk8中接口与抽象类的异同

2018-03-15  本文已影响0人  轻易流逝

相同点:

1.都能定义方法和属性

2.都不能创建实例

不同点:

1.抽象类只能单继承,接口可以多实现;

2.抽象类的方法可以用abstract、public、protect修饰,而接口方法只能用public abstract、default修饰;

3.抽象类的方法可以有抽象方法,也可以有实现的方法。而接口在jdk8以前只能有抽象方法,jdk8中可以带有默认方法;

4.抽象类的属性可以有各种各样的修饰符,接口的属性是默认的public static final

5.抽象类可以定义静态代码块,构造代码块,接口不行;

6.抽象类可以有构造方法,接口没有;

7.抽象类表示子类是不是某一类的子类,接口表示有没有某种功能;

8.接口只能继承接口,抽象类可以继承普通类,抽象类和接口。

上一篇下一篇

猜你喜欢

热点阅读