接口和抽象类之间的区别与联系
-
抽象类
作用:降低接口实现类与接口之间的实现难度。
-
抽象类是不完全抽象的,里面的方法,可以是抽象的,也可以是非抽象的,但是抽象类的类名必须由abstract修饰。
注意:由于被abstract修饰的成员必须要实现才有意义,而类中的属性不存在需要实现的情况,无论是基本数据类型还是引用数据类型的成员变量,他们在声明的时候就已经被赋予了默认的初始值。因此变量不能使用abstract去修饰。
-
类只支持单继承,因此一个类只能继承一个抽象类,抽象类被子类继承后,抽象方法必须重写。
-
抽象类在实现接口的时候,可以不重写接口中的抽象方法
-
抽象类中有构造方法,但是不能使用。
-
-
接口:
作用:功能封装,降低程序的耦合度
-
制定规则,降低耦合度
-
接口中的属性,默认是静态常量
-
接口中的方法都是抽象的,如果要定义具体实现方法,此方法需要使用defalut修饰,接口中的方法的访问权限不能使用private
-
接口支持多继承,多实现。即一个接口可以继承多个接口,一个类(包括非抽象类可以一次实现多个接口)--->总结:抽象类可以实现多个接口,接口可以继承多个接口。
-
-
浙公网安备 33010602011771号