欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java1.7和1.8新特性

程序员文章站 2022-07-14 13:39:08
...
1.7新特性
  • switch支持string
  • 创建泛型实例,可以通过类型推断简化代码,new后面的<>内不用再写泛型
HashMap<String, String> parmas = new HashMap<>();
  • try-with-resource语句实现自动资源管理,在try执行完毕后自动关闭资源,关闭的资源需要实现java.lang.AutoCloseable接口
private static void customBufferStreamCopy(File source, File target) {
    try (InputStream fis = new FileInputStream(source);
        OutputStream fos = new FileOutputStream(target)){
  
        byte[] buf = new byte[8192];
  
        int i;
        while ((i = fis.read(buf)) != -1) {
            fos.write(buf, 0, i);
        }
    }
    catch (Exception e) {
        e.printStackTrace();
    }
}
  • 单个catch捕捉多个异常,异常之间用管道符(|)隔开
   public static void testThrows() throws IOException, SQLException { 
      try { 
           testThrows(); 
       } catch (IOException | SQLException ex) { 
           throw ex; 
       } 
   }
Java1.8新特性
  • lambda表达式,功能接口(只有一个方法的接口)

  • 接口允许添加非抽象方法,需要添加default字段

public interface Demo {
    default public int add(int a,int b){
        return a+b;
    }
}
  • 允许使用::关子健传递方法或者构造函数

还有很多其他新特性,有时间再去看吧。哈哈哈