JAVA的新写法

1.数字常量支持下划线

int a = 11_11;//a的值为1111,下划线不影响实际值,提升可读性

2.一个catch中捕获多个异常类型,用(|)分隔开

try{
   //do something
} catch (FirstException | SecondException e) {
     logger.error(e);
}

3.try-with-resources,资源自动关闭

/*
 * 声明在try括号中的对象称为资源,在方法执行完毕后会被自动关闭
 */
try (BufferedReader br = new BufferedReader(new FileReader("d:七里香.txt")) {
   return br.readLine();
}

//JDK 7,8
try (BufferedReader br = new BufferedReader(new FileReader("d:七里香.txt")) {
   br.readLine();
}catch(IOException e){
  log.error("IO 异常,e:{}",e);
}
//JDk 9
BufferedReader br = new BufferedReader(new FileReader("d:七里香.txt")
try(br){
  br.readLine();
}catch(IOException e){
  log.error("IO 异常,e:{}",e);
}
 

 4.默认方法

默认方法就是一个在接口里面有了一个实现的方法。它允许将新方法添加到接口,但不强制实现了该接口的类必须实现新的方法。

public interface ISingerService {
    // 默认方法
    default void sing(){
        System.out.println("唱歌");
    }
    void writeSong();
}

//JaySingerServiceImpl 不用强制实现ISingerService的默认sing()方法
public class JaySingerServiceImpl implements ISingerService {
    @Override
    public void writeSong() {
        System.out.println("写了一首七里香");
    }
}

 

posted @ 2022-04-19 20:41  Gyoung  阅读(122)  评论(0)    收藏  举报