Java15 - 密封接口记录
默认情况下记录是最终的并且可以扩展接口。 我们可以定义密封接口,让记录实现它们以更好地管理代码。
示例
考虑以下示例 −
ApiTester.java
public class APITester { public static void main(String[] args) { Person employee = new Employee(23, "Robert"); System.out.println(employee.id()); System.out.println(employee.name()); } } sealed interface Person permits Employee, Manager { int id(); String name(); } record Employee(int id, String name) implements Person {} record Manager(int id, String name) implements Person {}
编译并运行程序
$javac -Xlint:preview --enable-preview -source 15 APITester.java $java --enable-preview APITester
输出
23 Robert