MinguoDate
MinguoDate (민국 달력의 날짜)
민국(Minguo) 달력 시스템의 날짜를 나타내는 클래스예요. 이 날짜는 민국 달력을 사용하며, 이 달력은 주로 중화민국, 흔히 대만으로 알려진 곳에서 사용돼요. 0001-01-01(민국)이 1912-01-01(ISO)과 정렬돼요.
본문
MinguoDate는 ChronoLocalDate의 구현이에요. 날짜를 만들려면 MinguoChronology.INSTANCE를 팩토리로 쓰면 돼요.
MinguoDate date = MinguoChronology.INSTANCE.date(113, 9, 22);
연도 값은 ISO proleptic-year에서 1911을 뺀이므로, MinguoChronology.INSTANCE.date(113, ...)는 ISO 2024년에 해당해요. 입력 날짜가 유효하지 않으면 DateTimeException이 던져져요.
이 클래스는 값 기반 클래스(value-based class)예요. 동일한 인스턴스는 서로 교환 가능하게 취급하고 동기화에 인스턴스를 사용하지 않아야 해요. 그렇게 하면 예측 불가능한 동작이 발생할 수 있어요. 비교는 equals 메서드를 사용해야 해요.