java jdk7与8的区别_jdk1.7与jdk1.8之间的区别

1二进制变量的表示,支持将整数类型用二进制来表示,用0b开头。

所有整数int、short、long、byte都可以用二进制表示:

byte aByte = (byte) 0b00100001;

2 Switch语句支持String类型。

3、Catch多个异常:

在Java 7中,catch代码块得到了升级,用以在单个catch块中处理多个异常。如果你要捕获多个异常并且它们包含相似的代码,使用这一特性将会减少代码重复度。下面用一个例子来理解。

catch(IOException | SQLException |Exception ex){

logger.error(ex);throw newMyException(ex.getMessage());

}

4、泛型实例的创建可以通过类型推断来简化 可以去掉后面new部分的泛型类型,只用<>就可以了。

5、

6、接口的默认和静态方法:

Java 8允许我们给接口添加一个非抽象的方法实现,只需要使用 default关键字即可,这个特征又叫做扩展方法。

public interfaceJDK8Interface {//static修饰符定义静态方法

static voidstaticMethod() {

System.out.println("接口中的静态方法");

}//default修饰符定义默认方法

default voiddefaultMethod() {

System.out.println("接口中的默认方法");

}

}

7、Annotation 注解:支持多重注解:

@YourAnnotation

@YourAnnotationpublic voidtest(){//TODO

}

8、Stream API是把真正的函数式编程风格引入到Java中。

9、Java 8引入Optional类来防止空指针异常

参考:

https://www.cnblogs.com/aspirant/p/8617201.html

1二进制变量的表示,支持将整数类型用二进制来表示,用0b开头。 所有整数int、short、long、byte都可以用二进制表示: byte aByte = (byte) 0b00100001; 2 Switch语句支持String类型。 3、Catch多个异常: 在Java 7中,catch代码块得到了升级,用以在单个catch块中处理多个异常。如果你要捕获多个异常并且它们包含相似的代码,使用这一特性将会减少代码重复度。下面用一个例子来理解。 catch(IOException | SQLException |Exception ex){ logger.error(ex);throw newMyException(ex.getMessage()); } 4、泛型实例的创建可以通过类型推断来简化 可以去掉后面new部分的泛型类型,只用<>就可以了。 5、 6、接口的默认和静态方法: Java 8允许我们给接口添加一个非抽象的方法实现,只需要使用 default关键字即可,这个特征又叫做扩展方法。 public interfaceJDK8Interface {//static修饰符定义静态方法 static voidstaticMethod() { System.out.println("接口中的静态方法"); }//default修饰符定义默认方法 default voiddefaultMethod() { System.out.println("接口中的默认方法"); } } 7、Annotation 注解:支持多重注解: @YourAnnotation @YourAnnotationpublic voidtest(){//TODO } 8、Stream API是把真正的函数式编程风格引入到Java中。 9、Java 8引入Optional类来防止空指针异常 参考: https://www.cnblogs.com/aspirant/p/8617201.html
经验分享 程序员 微信小程序 职场和发展