1.默认方法:
- 抽象类中可以有默认方法的实现
- 接口中么有默认方法的实现
2.构造器:
- 抽象类中可以有构造器
- 接口中么有构造器
3.修饰符
- 抽象方法可以用public、protected、default修饰符
- 接口默认修饰符是public abstract,不可以使用其他修饰符。
4.速度
- 抽象类比借口速度快
- 接口是稍微有点慢的,因为它需要时间去寻找在类中实现的方法。
5.非抽象方法
- 抽象类中可以有,在子类中不需要重写非抽象方法。
- 接口中不能有
6.多继承
- 抽象方法只能继承一个类,实现多个接口
- 接口可以继承多个其他的接口。
7.与其他java相比
- 抽象类属于类的一种
- 接口与类是并列关系
8.main方法
- 抽象方法可以有main方法,并可以运行
- 接口么有main方法,不可以运行
9.添加新方法
- 抽象类中新添方法,可以提供默认的实现
- 接口中新添方法,必须在接口的实现类中实现该方法。