前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JavaSE:Java9 新特性

JavaSE:Java9 新特性

作者头像
全栈程序员站长
发布2022-07-18 17:43:14
3280
发布2022-07-18 17:43:14
举报

大家好,又见面了,我是你们的朋友全栈君。

1.  Java9概述

    Java发布于2017年9月发布,带来了很多新特性,其中最主要的变化是模块化系统

    模块就是代码和数据的封装体,模块的代码被组织成多个包,每个包中包含java类和接口,模块的数据则包括资源文件和其他静态信息

2.  模块化的使用

    <1>  语法格式

        在module-info.java文件中,我们可以用新的关键字module来声明一个模块。具体如下:

            module 模块名称 {

            }

    <2>  模块化的优势

          减少内存的开销

          可简化各种类库和大型应用的开发和维护

          安全性,可维护性,提高性能

    <3>  使用

<span role="heading" aria-level="2">JavaSE:Java9 新特性
<span role="heading" aria-level="2">JavaSE:Java9 新特性
<span role="heading" aria-level="2">JavaSE:Java9 新特性
<span role="heading" aria-level="2">JavaSE:Java9 新特性
<span role="heading" aria-level="2">JavaSE:Java9 新特性
<span role="heading" aria-level="2">JavaSE:Java9 新特性
<span role="heading" aria-level="2">JavaSE:Java9 新特性
<span role="heading" aria-level="2">JavaSE:Java9 新特性

故进行如下的操作

<span role="heading" aria-level="2">JavaSE:Java9 新特性
<span role="heading" aria-level="2">JavaSE:Java9 新特性
<span role="heading" aria-level="2">JavaSE:Java9 新特性
<span role="heading" aria-level="2">JavaSE:Java9 新特性
<span role="heading" aria-level="2">JavaSE:Java9 新特性
<span role="heading" aria-level="2">JavaSE:Java9 新特性
<span role="heading" aria-level="2">JavaSE:Java9 新特性
<span role="heading" aria-level="2">JavaSE:Java9 新特性

3.  钻石操作符<>的使用升级

    在Java9中,允许在匿名内部类的使用中,使用钻石操作符<>

    代码

<span role="heading" aria-level="2">JavaSE:Java9 新特性
<span role="heading" aria-level="2">JavaSE:Java9 新特性

4.  集合工厂方法

    <1>  基本概念

          Java9的List, Set 和 Map集合中,增加了静态工厂方法of,实现不可变实例的创建

          不可变体现在无法添加、删除和修改它们的元素

          不允许添加null元素对象

    <2>  实际意义

          保证线程安全:在并发程序中,既保证线程安全性,也大大增加了并发时的效率

          被不可信的类库使用时会很安全

          如果一个对象不需要支持修改操作,将会节省时间和空间的开销

          可以当作一个常量来对待,并且这个对象在以后也不会被改变

    <3>  代码

<span role="heading" aria-level="2">JavaSE:Java9 新特性
<span role="heading" aria-level="2">JavaSE:Java9 新特性

5.  InputStream的增强

      <1> InputStream类中,提供了transferTo() 方法,实现将数据直接传输到OutputStream中

<span role="heading" aria-level="2">JavaSE:Java9 新特性
<span role="heading" aria-level="2">JavaSE:Java9 新特性

      <2> transferTo() 的内部

<span role="heading" aria-level="2">JavaSE:Java9 新特性
<span role="heading" aria-level="2">JavaSE:Java9 新特性

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/154294.html原文链接:https://javaforall.cn

本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com