493333王中王开奖结果-王中王开奖一马中特

493333王中王开奖结果让不同类型的网络可以可靠地互相联接,王中王开奖一马中特拥有规模庞大的原创游戏,在这里您将享受的不一样快乐。

网络频道

当前位置:493333王中王开奖结果 > 网络频道 > 【王中王开奖一马中特】Java 9 新特性,java新特性

【王中王开奖一马中特】Java 9 新特性,java新特性

来源:http://www.soniaLorenzana.com 作者:493333王中王开奖结果 时间:2019-10-06 00:43

Java 9 新特性,java新特性

1.目录结构 
2.repl工具 jShell命令 
3.模块化 
4.多版本兼容jar包 
5.接口方法的改进(在接口中 jdk7 只能声明全名常量和抽象方法 jdk8 添加了静态方法和默认方法 jdk9添加了私有方法)
6.钻石操作符升级 可以有{} 
7.异常处理try升级 
8.下划线标识符命名的限制 _ 不允许了 
9.String底层存储结构的变更(char数组变成byte字节数组) 
10.增强了Stream API(在java8基础上,新增加4个方法) 
11.jdk9 中引入httpClient api 代替原有的HttpURLConnection
 
1、Java9 新特性之---目录结构
 
 
 
包含jdk8及以前的jdk版本,所有目录结构以及目录含义如图:
 
 
 
 

 
 
 
    jdk9之后,目录结构发生变化如图:
 
 
 
这个新特性只要了解下就可以了,这个目录结构是方便为了接下来新特性做保证
 
 
 
2、Java9新特性之---JShell工具
 
 
 
怎么理解,怎么用呢?这个只是针对于java9来说,相当于cmd工具,你可以和cmd一样,直接写方法等等,不过我认为只是适用于初学者做一些最简单的运算和写一些方法:
 
 
 
在cmd中打开这个工具:

进入工具后可以做一些简单的java操作

等等,我认为只适用于初学者学习java不用其他编辑工具就可以学习java
 
3、Java9新特性之---模块化
 一个大型的项目,比如淘宝商城等,都会包含多个模块,比如订单模块,前台模块,后台管理模块,广告位模块,会员模块.....等等,各个模块之间会相互调用,不过这种情况下会很少,只针对特殊情况,如果一个项目有30个模块系统进行开发,但是只要某个单独模块运行时,都会带动所有的模块,这样对于jvm来说在内存和性能上会很低,所以,java9提供了这一个特性,某一个模块运行的时候,jvm只会启动和它有依赖的模块,并不会加载所有的模块到内存中,这样性能大大的提高了。写法上如下:
        

 
一个项目中的两个模块,模块之间通过module-info.java来关联,在IDEA编辑器右键创建package-info.java
 
        

 
在这个两个模块java9Demo和java9Test中,java9demo编写一个实体类Person,在java9Test调用这样一个过程
 
这个是java9Demo 将 java9Test 模块需要的文件导出 exports  把它所在的包导出 
 

 
然后在java9Test模块中创建一个package-info.java,引入java9Demo模块导出包名
 
 
这样就可以直接在java9Test中引入Person实体类了,这只是一个简单的例子。exports 控制着那些包可以被模块访问,所以不被导出的包不能被其他模块访问
 
4、Java9新特性之---多版本兼容Jar包
 
怎么理解呢?
 
好多公司用的jdk大部分还是老版本,jdk6,7 都有,他们都不敢升级主要是因为兼容的问题,但是java9做到了这一点,就是不管公司的项目是用的java6,7,8甚至5,他都可以兼容不出错,打个比方,你之前用的是iphone5,现在出现了iPhone6,iphone7,iphon8和iphone9,但是你不敢买9,因为你自己已经适应了iphone5的所有手机的运行流程,6,7,8每个手机的运行流程不一样,但是这个9很强大,它能够识别你现在所用的版本iphone是5,所以当你升级到iphone9的时候,你的这个手机运行流程还是iphone5的流程,只是在原有基础上拥有了更多的iphone9的所有优势。
 
5、Java9新特性之---接口Interface的升级
 

 
6、Java9新特性之---钻石操作符的升级
 
 
7、Java9新特性之---异常处理try升级
 
首先看下jdk6,7,8,9 的try catch的比较
 
Java6处理方式:
 
 
java7,8 共同的处理方式:

 
 
 java9的处理方式:

 
 
这下子应该一幕了然了吧
 
8、Java9新特性之---特殊标识符增加限制
 
java8 之前 String _ ="hello";  这样的标识符可以用,java9就用不到。
 
9、Java9新特性之---String底层存储结构更换
 
java8之前 String的底层结构类型都是 char[] ,但是java9 就替换成 byte[] 这样来讲,更节省了空间和提高了性能
 
  

之所以替换是因为

之前一直是最小单位是一个char,用到两个byte,但是java8是基于latin1的,而这个latin1编码可以用一个byte标识,所以当你数据明明可以用到一个byte的时候,我们用到了一个最小单位chat两个byte,就多出了一个byte的空间。所以java9在这一方面进行了更新,现在的java9
 是基于ISO/latin1/Utf-16 
 ,latin1和ISO用一个byte标识,UTF-16用两个byte标识,java9会自动识别用哪个编码,当数据用到1byte,就会使用iSO或者latin1
 ,当空间数据满足2byte的时候,自动使用utf-16,节省了很多空间
 
    

 
同理,StringBuilder StringBuffer也更换了底层数据结构
 
10、Java9新特性之---Stream API 新方法的添加
 
在原有Stream API 新添加了4个方法,takeWhile dropWhile ofNullable iterate(新重载方法)
 
首先解释 takeWhile 当达到一定条件就结束:输出结果为45 43,如图
 
    

 
而 dropWhile 则和takeWhile 相反
 
ofNullable, 在java8中 Stream中的元素不能完全为null,否则空指针异常,而在java9的升级中,允许创建null
 
iterate 不加条件无线循环
 
    

 
11、Java9新特性之---引进HttpClient
 
以往我们都是通过maven添加httpclient ,java9直接引入即可
 
Java9所有特性都是为了提高性能和内存。

http://www.bkjia.com/Javabc/1306979.htmlwww.bkjia.comtruehttp://www.bkjia.com/Javabc/1306979.htmlTechArticleJava 9 新特性,java新特性 1.目录结构 2.repl工具 jShell命令 3.模块化 4.多版本兼容jar包 5.接口方法的改进(在接口中 jdk7 只能声明全名常量和抽...

4【后端】java基础(2.2)java基本语法之基本数据类型和变量

32 wxss学习系列《四》字体,组件及API的思维导图字体,组件及API的思维导图

27【后端】java基础(5.4)java高级基础之java的修饰符——非访问控制符

14【后端】java基础(4.3)java中级基础之集合——Set

20 使用ES6新特性开发微信小程序(2)Template Literals(模板对象)

11【后端】java基础(3.5)java基础进阶之小游戏与转义字符


13【新手入门】javascript新手学习第五课Date

13【后端】java基础(4.2)java中级基础之集合——List

23【后端】java基础(5.7)java高级基础之IO与异常处理

11【新手入门】javascript新手学习第三课Object对象

24 使用ES6新特性开发微信小程序(6)元编程

25 使用ES6新特性开发微信小程序(7)模块

待续……

12【新手入门】javascript新手学习第四课Array数组对象

12【后端】 java基础(四)java中级基础之数组

19 使用ES6新特性开发微信小程序(1)Constants(常量)

16【后端】java基础(4.5)java中级基础之综合应用与api文档


26【后端】java基础(5.3)java高级基础之java的修饰符——访问控制符

34【后端】javaweb(2.1)servlet的搭建

35【后端】javaweb(2.3)HttpServletRequest

37【后端】javaweb(2.5)动态页面

10【新手入门】javascript新手学习第二课函数

26 使用ES6新特性开发微信小程序(8)国际化与本地化

14【新手入门】javascript新手学习第六课DOM

17【后端】java基础(5.1)java高级基础之对象

30 wxss学习系列《二》尺寸(Dimension),外边距(margin)和内边距尺寸(Dimension),外边距(margin)和内边距

24【后端】 java基础(5.8)java高级基础之线程——synchronized关键字

5【后端】java基础(2.3)java基本语法之运算符

9【后端】java基础(3.3)java基础进阶之数据基本类型的转换

17【新手入门】javascript新手学习第九课this

31 wxss学习系列《三》背景(Background)与颜色(Color),边框背景(Background)与颜色(Color),边框

20【后端】java基础(5.4)java高级基础之java的修饰符——非访问控制符

本文由493333王中王开奖结果发布于网络频道,转载请注明出处:【王中王开奖一马中特】Java 9 新特性,java新特性

关键词:

上一篇:跟windows分手 加入Linux

下一篇:没有了