Java8新特性系列-默认方法
Java8 Interface Default and Static Methods原文连接:Java8新特性系列-默认方法 – 微爱博客
在 Java 8 之前,接口只能有公共抽象方法。 如果不强制所有实现类创建新方法的实现,就不可能向现有接口添加新功能,也不可能创建具有实现的接口方法。
从 Java 8 开始,接口可以具有静态和默认方法,尽管在接口中声明了这些方法,但它们具有已定义的行为。
静态方法 假如一个接口有如下的方法
static String producer() { return "N&F Vehicles";
}
静态 producer() 方法只能通过接口和在接口内部使用。 它不能被实现类覆盖。 要在接口之外调用它,应使用静态方法调用的标准方法:
String producer = Vehicle.producer();
默认方法 默认方法是使用新的 default 关键字声明的。 这些可以通过实现类的实例访问,并且可以被覆盖。
让我们为 Vehicle 接口添加一个默认方法,该方法也会调用该接口的静态方法:
default String getOverview() { return "ATV made by " + producer();
}
假设这个接口是由类 VehicleImpl 实现的。 为了执行默认方法,应创建此类的实例:
Vehicle vehicle = new VehicleImpl();
String overview = vehicle.getOverview();
【Java8新特性系列-默认方法】
推荐阅读
- 遇见SQL|下课看着文档走回实验室,我重新拾起了遗忘的SQL运算符
- 2022李宏毅作业hw1—新冠阳性人员数量预测。
- 笔记|ES6 新特性介绍
- ES6|ES6新特性常用总结
- 前端|ES6语法新特性
- 前端|ES6新特性总结
- javascript|ES6新特性(上)——let及const、解构赋值、模板字符串、Symbol
- JavaScript|ES6新特性总结(2)解构赋值、模板字符串、Symbol
- 重新编译kubeadm以解决证书一年过期的问题
- android|android 系统升级 方法,安卓系统怎么升级 浅谈安卓系统更新升级的几种方法