1
0
mirror of https://github.com/Snailclimb/JavaGuide synced 2025-08-01 16:28:03 +08:00

Update: 接口和抽象类的区别是什么

Java 8 开始接口方法可以有默认实现
This commit is contained in:
feng qijun 2018-10-13 23:44:51 +08:00 committed by GitHub
parent 8583d26406
commit 386bac0425
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -225,7 +225,7 @@ String 中的对象是不可变的,也就可以理解为常量,线程安全
## 17. 接口和抽象类的区别是什么
1. 接口的方法默认是 public所有方法在接口中不能有实现抽象类可以有非抽象的方法
1. 接口的方法默认是 public所有方法在接口中不能有实现(Java 8 开始接口方法可以有默认实现),抽象类可以有非抽象的方法
2. 接口中的实例变量默认是 final 类型的,而抽象类中则不一定
3. 一个类可以实现多个接口,但最多只能实现一个抽象类
4. 一个类实现接口的话要实现接口的所有方法,而抽象类不一定