Overview JDK 15, 16에서 preview feature로 소개되었던 sealed 클래스가 JDK 17에서 릴리즈 되었습니다. (JEP 409) 'seal'는 '봉인하다' 라는 의미를 가지며, sealed 클래스는 상속될 하위 클래스들을 봉인할 수 있습니다. 다시 말하면, sealed 클래스 및 인터페이스는 허용된 클래스와 인터페이스에 의해서만 확장되거나 구현될 수 있도록 제한합니다. Motivation 클래스 계층 구조는 상속을 통한 코드 재사용의 목적도 있지만, 또 다른 목적으로 도메인 모델링을 위해 사용하기도 합니다. 예를 들어, 결제 수단으로 카드와 현금만 지원하는 도메인이 있다고 가정해봅시다. Java에서는 이렇게 고정된 수의 인스턴스만 있는 상황을 모델링 하기 위해 enum 클래스를..