ZoneRules — 시간대별 존 오프셋 변동 규칙

ZoneRules — 시간대별 존 오프셋 변동 규칙

단일 시간대에서 존 오프셋이 어떻게 변하는지를 정의하는 규칙을 나타내는 클래스예요.

출처: Java API Reference

본문

시그니처

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) — 지정한 로컬 날짜-시간에 지정한 오프셋이 유효한지 확인해요.

더 알아보기 (Learn more)