自学内容网 自学内容网

JDK17语法新增

1.yield关键字:

  • 2.var关键字:

  • 3.密封类:

  • ⼀般应⽤在类和接⼝中,对接⼝和类的实现和继承进⾏约束。主要使⽤的关键字是 final 。当这个类被 final 修饰了,被修饰的类就变成完全封闭的状态了,所有类都没办法继承。

  • 4.密封类关键字:

  • sealed密封类除了可以被该关键字修饰,并且在声明末尾⽤permits 表⽰要开放给哪些类型:

  • 这里的Animal用sealed修饰之后必须要有子类,继承这个密封类的子类必须加上sealed关键字或者non-sealed关键字,才能继承用sealed修饰的父类。(这里的non-sealed是指所有类都可以继承这个类):

  • 但是如果这里的Dog也是sealed修饰的话,那么Dog也必须有子类来继承!

  • 5.接口中的私有方法:

  • Java8,接可以有默认⽅法。Java9之后,可以在接⼝内实现私有⽅法实现。

  • 6.instanceof:

  • 通过这个代码我们知道instanceof判断了obj是否为String类型,如果是就返回true 进入语句,向下转型。并且这里面创建了一个str的临时变量。但是在JDK16中,使⽤模式匹配思想改进了instanceof⽤法,可以做到以下优化效果:

  • 这就是优化之后的代码,和第一张图实现的功能都是一致的。

原文地址:https://blog.csdn.net/wk200411/article/details/145169407

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!