壹、接口和抽象类
一、两者相似性
1.接口和抽象类都不能被实例化,它们都在继承树的顶端,用于被其他类集成或实现
2.接口和抽象类都可以包含抽象方法,实现接口或集成抽象类的普通类都必须实现这些抽象方法
二、两者区别
1.接口里只能包含抽象方法,静态方法和默认方法,不能为普通方法提供方法实现,抽象类里可以有普通方法
2.接口里只定义静态常量,不能定义普通成员变量,抽象类里既可以有静态常量也可以有普通成员变量
3.接口不能包含构造器,抽象类可以包含构造器,抽象类里构造器并不是用于创造对象,而是让其子类调用构造器来完成属于抽象类的初始化操作
4.接口里不能包含初始化块,抽象类里可以有初始化块
5.一个类只能有一个直接父类,包括抽象类,但是一个类可以实现多个接口,可以弥补java单继承的不足
Java回忆
最新推荐文章于 2023-08-11 22:27:17 发布