`

Java7的一些新特性

 
阅读更多

1. 二进制数值表达方法,可以加前缀 0b 或者 0B,来表达byte, short,int和long。 这个是和之前的十六进制表达方式 0x 或 0X 是相对应的。

byte b = (byte)0b00100001;

int i = 0b101;

 

 

2. 数值中间可以用下划线断开,例如

long creditCardNumber = 1234_5678_9012_3456L;

float pi = 3.14_15F;

但是下划线不能再开头,结尾,或者 F, L的前面

 

 

3. 泛型定义时可以自动推断出来,但是 <>这个符号是不能少的。

比如

Map<String, List<String>> myMap = new HashMap<String, List<String>>();

可以写成:

Map<String, List<String>> myMap = new HashMap<>();

 

 

4. try-with-resources。 resource必须是 java.lang.AutoCloseable。会自动调用它的close()方法。

 try (BufferedReader br = new BufferedReader(new FileReader(path))) {

    br.readLine();

 }

也可以同时声明多个resource:

try (BufferedReader br = new BufferedReader(new FileReader("path"));

    BufferedReader br2 = new BufferedReader(new FileReader("path"))) {

       br.readLine();

 }

也可以用在JDBC的 Statement上

try (Statement stmt = cn.createStatement()) {

    ResultSet rs = stmt.executeQuery("SELECT * FROM table1");

}

  

5.同时捕获多个Exception

try{

 ...

} catch (IOException ex) {

 ...

}catch (SQLException ex) {

 ...

}

可以这样写了

try{

 ...

} catch (IOException|SQLException ex) {

 ...

}

 

6. 新的文件读写包 java.nio.file。比之前的java.io.File强大不少。 常用的有 Files, Paths

Paths:用来生成一个实现Path接口的实现类。由于jvm运行的平台不同,会得到不同的Path实现类。

Files:具体对文件进行操作的类,包括复制文件,创建目录,创建文件,创建连接,删除文件,获取文件的BufferReader,BufferWriter,InputStream,OutputStream,以字节和字符串形式读取文件,写入文件内容等等

 

7.  fork/join 框架,基于 ForkJoinPool 类,它是 Executor 接口的实现,设计它用来进行高效的运行大量任务;ForkJoinTask代表一个需要执行的任务,真正执行这些任务的线程是放在一个线程池(ForkJoinPool)里面。它可以把一个大的任务划分为若干个小的任务并发执行,充分利用可用的资源,进而提高应用的执行效率。采用work-stealing 的方式,比ExcuteService更高效。

 

8. 新的垃圾回收器G1,可以替代之前的 CMS ( Concurrent Mark-Sweep Collector)

 

分享到:
评论

相关推荐

    Java7的新特性

    Java新特性学习 Jlayer是一个适用于Swing组件的灵活而强大的组件装饰器。提供了用来装饰多个组合组件的方式,并且可以捕获所有鼠标、键盘和FocusEvent的事件,并针对所有的XLayer子组件。这个组件只会对public swing...

    JAVA 7新特性1

    JAVA 7新特性1

    java7新特性与java高级编程

    必须掌握的java7新特性与java高级编程,全面深入解读,跟随行业的脚步进行java开发

    JAVA5新特性介绍

    JAVA5新特性介绍,JAVA5新特性介绍

    JAVA7新特性透明窗体代码

    java7 swing新特性窗体透明官方示范代码

    新手学Java7编程(第5版)

    之后,《新手学java7编程(第5版)》介绍了java的一些高级特性,包括多线程程序设计和泛型。最后以对swing的介绍结束了全书。本教程节奏轻快,可以帮助读者快速掌握java程序设计。  《新手学java 7编程(第5版)》特色 ...

    java7新特性功能表

    java7新特性功能表,让你更清楚的认识java7。

    Java7 新特性

    详细介绍Java 7 的新特性,并举例说明二进制字面值(Binary Literals) ,数字变量对下划线_的支持,switch 对String的支持等等。

    java8的新特性.doc

    自己整理的java8新特性及demo 1. Lambda表达式 1 2. 方法的引用 6 3. 构造器引用 7 4. 函数式(Functional)接口 7 5. 四大函数式接口 8 6. Stream 11 7. Map接口的新方法: 19 8. 并行流与串行流 20 9. ...

    Java异常处理新特性

    在Java7中Java对其自身的异常处理机制进行了改进,同时增加了很多新的特性,这些特性对于编写更加可靠的程序有着非常大的帮助作用。这里我们对其进行详细的介绍。

    java7的新特性

    oracle大学java的新特征,讲了一些新的东西,只是ppt课件

    2018最新 Java9新特性详解视频

    7.新特性2:模块化的特性概述 8.模块化特性的代码实现 9.新特性3:jshell命令的使用 10.新特性4:多版本兼容jar包的使用说明 11.多版本兼容jar包的代码演示 12.新特性5:接口中定义私有方法 13.新特性6:钻石操作符...

    Java7新特性中文介绍

    Java7的公布将引起行业的轰动 原本就很强大的Java,在经历Oracle的重组后到底发生了什么变化? 最新Java7官方的介绍翻译版带你走进Java7平台。

    JAVA7新特性介绍(官方公布)中文版[参照].pdf

    JAVA7新特性介绍(官方公布)中文版[参照].pdf

    JDK7新特性(完整篇)

    1.1 JDK7新特性&lt;一&gt;概述 . . . . . . . . . . . . . . 1.2 JDK7新特性&lt;二&gt; 语法 . . . . . . . . . . . . . 1.3 JDK7新特性&lt;三&gt; JDBC4.1 . . . . . . . . . . 1.4 JDK7新特性&lt;四&gt; NIO2.0 文件系统 . . . 1.5 JDK...

    Java 7入门经典

    Java SE 7相对之前发布版本更新了超过30%的语言特性,《Java 7入门经典》从基础知识入门,介绍了使用这一最新发布版本编写Java程序的方方面面,涵盖了Java的所有语言新特性,可为读者打下坚实的基础。

    完整版 Java开发实训课程系列-Java高级应用编程 第6章 Java7新特性(共16页).ppt

    【完整课程列表】 完整版 Java开发实训课程系列-Java高级应用编程 第1章 工具类(共65页).ppt 完整版 Java开发实训课程系列-Java...完整版 Java开发实训课程系列-Java高级应用编程 第6章 Java7新特性(共16页).ppt

    JAVA2核心技术第7版卷2高级特性-中文版

    JAVA2核心技术第7版卷2高级特性-中文版 内容简介  本书是java 2技术权威指南,全面覆盖java 2技术的高级主题,包括:多线程、集合框架、网络api、数据库编程、分布式对象等,深入探究了swing、java 2d api、...

    java进阶/JDK 7、8新特性

    Java面向对象编程进阶.ppt Java进阶.pptx

Global site tag (gtag.js) - Google Analytics