Java 17

yshjft·2022년 9월 26일
0

Java, OOP

목록 보기
18/27

프로젝트에서 Java 17을 사용하였기에 Java 17에대해 간단히 정리합니다.

3번째 LTS(Long Term Support)

17은 8과 11에 이은 3번쨰 LTS이다.

Sealed class

  • 17에서 정식 추가된 기능이다.
  • Super Class의 Sub Class들을 명확히 인지할 수 있도록 해준다.
    • 상속하거나 구현할 클래스를 지정해두고 해당 클래스들만 상속 혹은 구현을 허용하는 키워드
    • public abstract sealed class Shape permits Circle, Rectangle, Square { … }
  • 상속/구현하는 클래스는 final, non-sealed, sealed 중 하나로 선언되어야 한다.
  • Permitted Subclass들은 동일한 module에 속해야 하며 이름이 지정되지 않은 module에 선언 시에는 동일한 package 내에 속해야 한다.
  • Permitted Subclass는 Sealed Class를 직접 확장해야 한다.

참고

profile
꾸준히 나아가자 🐢

0개의 댓글