您的位置:首页 > 编程语言 > Java开发

java7 新特性

2014-01-20 22:43 302 查看
内容出自《java程序员修炼之道》,这里只是做个总结和备忘。

1、语法糖:

数字中的下划线:比如 int  a=100_000_000; 能让比较大的数字看起来更清晰

二进制文本:

                   java7可以直接使用二进制数字,比如用二进制表示十进制的102,java7之前需要这样写:

int x = Integer.parseInt("1100110",2);
  现在可以写成:

     int x = 0b110010;

switch 支持String 类型:

java7之前,case语句中的常量只能是byte、char、short和int 或者枚举常量。Java 7 增加了String,这个小小的改动非常有用,方便程序员更容易的使用switch语句。

public void printDay(String num){
switch(num){
case "one": System.out.println("first");break;
case "two": System.out.println("second");break;
default: System.out.println("have fun");
}
}


2、新的语言小特性

异常处理:

multicatch  和 final 重抛

try-witch-resources(TWR)

3、钻石语法(类型推断)

NIO2.0:

NIO2.0是一组新的类和方法,主要存在于java.nio包内,优点:

完全取代了java.io.File与文件系统的交互。

提供了新的异步处理类,让你无需手动配置线程池和其他底层并发控制,便可在后台线程中执行文件盒网络I/O操作

引入了新的Network-Channel构造方法,简化了套接字(Socket)与通道的编码工作

支持目录树的直接导航(Files.walkFileTree())、符号链接(Files.isSymbolicLink())能用一行代码读取文件的属性(Files.readAttributes())

可以使用新的AsynchronousFileChannel,不用指定工作线程或者队列就可以在后台读取大型文件。

新的API其实顺应了两个发展趋势:

1、对其他数据存储方法的探索,特别是非关系型或大数据集

2、对于多核并发趋势,它为多线程文件盒套接字访问的应用提供了一个简单的抽象层

未完待续……
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: