farmeter / random

0 stars 0 forks source link

Java 14 - New Features : instanceof 외 #25

Closed farmeter closed 4 years ago

farmeter commented 4 years ago

https://www.journaldev.com/37273/java-14-features https://multifrontgarden.tistory.com/265

Preview스펙 : Pattern Matching for instanceof (Preview)

instanceofif 구문 사용 시, 별도로 캐스팅 않아도 된다.

// before Java 14
if (obj instanceof Journaldev) {
  Journaldev jd = (Journaldev) obj;
  System.out.println(jd.getAuthor());
}

// Java 14 Onwards
if (obj instanceof Journaldev jd) {
  System.out.println(jd.getAuthor());
}

Helpful NullPointerExceptions

가장 마음에 드는 feature 인데요.

a.b.c.i = 99; 와 같은 구문에서 NPE 발생 시, line number 뿐 아니라, 원인을 좀더 상세하게 보여 준다.

// before Java 14
Exception in thread "main" java.lang.NullPointerException at Prog.main(Prog.java:5)

// Java 14 Onwards
Exception in thread "main" java.lang.NullPointerException
: Cannot assign field "i" because "a" is null at Prog.main(Prog.java:5)

Preview 스펙 : Records