小滴课堂-学习笔记:(10)Java高级核心之玩转JDK9常见特性讲解

56 篇文章 0 订阅
20 篇文章 0 订阅

logo 愿景:"让编程不再难学,让技术与生活更加有趣"


更多架构课程请访问 xdclass.net

目录

第1集 新版JDK13下载和本章课程说明

第2集 java高级核心之JDK9常用Jshell实战

第3集 接口方法进阶之JDK9私有方法

第4集 JDK9新特性之增强try-with-resource

干货文档


第1集 新版JDK13下载和本章课程说明

简介:讲解JDK13版本的下载和后续课程说明

 

 

  • JDK9~13新增特性很多但不会全部都讲解

    • 会讲解: 常见的有利于提高开发效率,常见API增强

    • 不讲解:不常用的API, 或者只是试验性的功能, 如AOT静态编译

 

 

第2集 java高级核心之JDK9常用Jshell实战

简介:讲解jdk9新增测试工具jshell实战

 

 

 

第3集 接口方法进阶之JDK9私有方法

简介:讲解jdk9新增的接口私有方法

  • 什么是jdk9新增的接口私有方法

    • JDK8新增了静态方法和默认方法,但是不支持私有方法

    • jdk9中新增了私有方法

public interface OrderPay {
    void pay();
​
    default void defaultPay(){
        privateMethod();
    }
​
    //接口的私有方法可以在JDK9中使用
    private void privateMethod(){
        System.out.println("调用接口的私有方法");
    }
}
​
public class OrderPayImpl implements OrderPay {
    @Override
    public void pay() {
        System.out.println("我实现了接口");
    }
}
​
    public static void main(String[] args) throws Exception {
​
        OrderPay orderPay = new OrderPayImpl();
        orderPay.defaultPay();
        orderPay.pay();
​
    }
  • 注意点(面试题!!!):

    • 接口中的静态方法不能被实现类继承和子接口继承,但是接口中的非静态的默认方法可以被实现类继承

    • 例如List.of() 方法,ArrayList虽然继承了List,但是不能用ArrayList.of()方法

    • 类的静态方法可以被继承

 

第4集 JDK9新特性之增强try-with-resource

简介:讲解jdk9新增的接口私有方法

  • 什么是try-with-resource

    • 在JDK7中,新增了try-with-resources语句,可以在try后的括号中初始化资源,可以实现资源自动关闭

OutputStream out = new FileOutputStream(filepath);
try(OutputStream temp = out;) {
            temp.write((filepath+"可以学习java架构课程").getBytes());
        }catch (Exception e){
            e.printStackTrace();
        }
  • 什么是增强try-with-resource

    • 在JDK9中,改进了try-with-resources语句,在try外进行初始化,在括号内引用,即可实现资源自动关闭,多个变量则用分号进行分割

    • 不需要声明资源 out 就可以使用它,并得到相同的结果

 public static void main(String[] args) throws Exception {
​
        String path = "/Users/xdclass/Desktop/t.txt";
        test(path);
    }
​
    private static void test(String filepath) throws FileNotFoundException {
        OutputStream out = new FileOutputStream(filepath);
        try (out) {
            out.write((filepath + "可以学习java架构课程").getBytes());
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
​

干货文档

                                                        关注公众号发送:“CSDN干货文档”  即可领取

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dev666

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值