ZoneRules — 시간대별 존 오프셋 변동 규칙
ZoneRules — 시간대별 존 오프셋 변동 규칙
단일 시간대에서 존 오프셋이 어떻게 변하는지를 정의하는 규칙을 나타내는 클래스예요.
본문
시그니처
public final class ZoneRules extends Object
implements Serializable
구현된 인터페이스: Serializable.
설명
이 규칙들은 한 시간대의 모든 과거·미래 전환을 모델링해요. 알려진(주로 과거의) 전환에는 ZoneOffsetTransition이, 알고리즘 결과에 기반한 미래 전환에는 ZoneOffsetTransitionRule이 사용돼요.
규칙은 ZoneRulesProvider를 통해 ZoneId를 사용해 로드돼요. 같은 규칙이 내부적으로 여러 zone ID 사이에서 공유될 수 있어요.
ZoneRules 인스턴스를 직렬화하면 규칙 전체 집합이 저장돼요. zone ID는 이 객체의 상태 일부가 아니므로 저장되지 않아요.
규칙 구현은 과거·미래 전환에 대한 전체 정보를 저장하거나 저장하지 않을 수 있으며, 저장된 정보는 rules provider가 구현에 제공한 것만큼 정확해요. 애플리케이션은 제공된 데이터가 이 규칙 구현이 가진 최상의 정보를 나타낸다고 취급해야 해요.
주요 메서드
of(ZoneOffset baseStandardOffset, ZoneOffset baseWallOffset, List<ZoneOffsetTransition> standardOffsetTransitionList, List<ZoneOffsetTransition> transitionList, List<ZoneOffsetTransitionRule> lastRules)— 전환 목록과 규칙에서ZoneRules인스턴스를 얻어요.getOffset(Instant instant)— 이 규칙에서 지정한 instant에 적용되는 오프셋을 얻어요.getOffset(LocalDateTime localDateTime)— 이 규칙에서 지정한 로컬 날짜-시간에 대한 적합한 오프셋을 얻어요.getStandardOffset(Instant instant)— 이 존에서 지정한 instant에 대한 표준 오프셋을 얻어요.getDaylightSavings(Instant instant)— 이 존에서 지정한 instant에 사용 중인 일광 절약 시간(DST) 양을 얻어요.getTransition(LocalDateTime localDateTime)— 이 규칙에서 지정한 로컬 날짜-시간에 적용되는 오프셋 전환을 얻어요.isValidOffset(LocalDateTime localDateTime, ZoneOffset offset)— 지정한 로컬 날짜-시간에 지정한 오프셋이 유효한지 확인해요.