1.接口是对动作的抽象,而抽象类是对根源的抽象。可以这样理解:抽象类表示的是这个类是什么,而接口表示的是这个类能干什么。
2.在高级语言中,一个类只能继承一个抽象类;而一个类却可以实现多个接口。
3.抽象类的功能远比接口强大,但是定义抽象类的复杂度(代价)要比定义接口大很多。
4.接口中的方法的修饰符号只能是public,抽象类中的抽象方法的修饰符号可以是public、protected、default。
5.接口中没有构造方法,抽象类中可以有构造方法。
1.接口是对动作的抽象,而抽象类是对根源的抽象。可以这样理解:抽象类表示的是这个类是什么,而接口表示的是这个类能干什么。
2.在高级语言中,一个类只能继承一个抽象类;而一个类却可以实现多个接口。
3.抽象类的功能远比接口强大,但是定义抽象类的复杂度(代价)要比定义接口大很多。
4.接口中的方法的修饰符号只能是public,抽象类中的抽象方法的修饰符号可以是public、protected、default。
5.接口中没有构造方法,抽象类中可以有构造方法。