1-java 抽象类和接口的区别

java 抽象类和接口的区别

 

抽象类是用来(继承)当做超类的(子类用来实现的),可以用public和protected修饰,可以写具体的方法可以声明各种类型的成员变量

接口是用来当做只能存在public的抽象方法(JDK8以后可以有),声明成员变量是public static final 类型的(即使不屑也会是这种类型)

java不支持多继承,但是支持多实现,所以换种方式来讲,接口就是换种方式(接口)来实现C++那种多继承的

抽象类中的抽象方法子类可以不用全部实现,但是接口中的方法实现类必须全部实现

 

从软件设计角度来看:

1.抽象类是自下而上设计的。也就是说先有子类代码的重复,然后再抽象成上层的父类(也就是抽象类);

2.接口是自下而上设计的。一般是先考虑设计接口,再去考虑具体的实现。

 

参考地址:

https://www.maoqitian.com/2019/01/16/%E6%8E%A5%E5%8F%A3%E5%92%8C%E6%8A%BD%E8%B1%A1%E7%B1%BB/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章