接口
booniez2024-04-22 15:41:44后台 Java继承
- 接口中的变量默认会被
final
修饰 - 接口中的变量默认会被
static
修饰 - 接口中的变量默认会被
public
修饰 - 没有构造方法,不能有自己的实例
TIP
可能会好奇,实现类构造方法调用的 super() 是调谁的构造方法
每个 class 默认会继承 Object 所以,调用的 Object 的构造方法
- 成员方法默认是抽象方法,系统会默认加上
abstract
和public
修饰
WARNING
只在 JDK7中有这个说法,JDK8、JDK9有一些新特性 JDK8 以后
可以创建非抽象方法,使用
default
修饰- 如果实现类实现了多个接口,多个接口拥有相同的方法声明,在实现类中,就必须重写该方法,不然就不知道调用谁的逻辑
允许创建静态方法 (静态方法只能通过类名去调用,不能通过实现类类名或者实例去调用)
JDK9 以后 可以创建私有方法
- 如果直接父类和接口方法重名,优先使用直接父类的逻辑
类和接口的关系
类与类 继承关系,只能单继承,但是可以多层继承
类和接口 实现关系,可以单实现,也可以多实现,还可以在继承一个类的时候实现多个接口
接口和接口的关系 继承关系,可以单继承,也可以多继承
Powered by Waline v2.15.8