Date & Time 날짜와 시간
java.util.Date
- 날짜와 시간을 다룰 목적으로 만들어진 클래스 (JDK 1.0 - 1995)
- Date 의 메서드는 deprecated (사용 금지) 하지만, 여전히 쓰이고 있다.
java.util.Calendar
- Date 클래스를 개선한 새로운 클래스 (JDK1.1 - 1997), 여전히 단점 존재
java.time 패키지
- Date 와 Calendar 의 단점을 개선한 새로운 클래스들을 제공 (JDK 1.8 - 2014)
- 날짜와 시간을 따로 다룰 수 있게 개선 (그 전까지는 통합)
Calendar class
- 추상 클래스이므로
getInstance() 를 통해 구현된 객체를 얻어야 한다.
- 추상 클래스는 인스턴스 생성 불가
Calendar cal = Calender.getInstance();
int thisYear = cal.get(Calender.YEAR);
int lastDayOfMonth = cal.getActualMaximum(Calendar.DATE);
| 필드 명 | 설명 |
|---|
| YEAR | 년 |
| MONTH | 월 (0부터 시작) |
| WEEK_OF_YEAR | 그 해의 몇 번째 주 |
| WEEK_OF_MONTH | 그 달의 몇 번째 주 |
| DATE | 일 |
| DAY_OF_MONTH | 그 달의 몇 번째일 |
| DAY_OF_YEAR | 그 해의 몇 번째일 |
| DAY_OF_WEEK | 요일 (1 : 일요일) |
| DAY_OF_WEEK_IN_MONTH | 그 달의 몇 번째 요일 |
| 필드 명 | 설명 |
|---|
| HOUR | 시간 (0~11) |
| HOUR_OF_DAY | 시간 (0~23) |
| MINUTE | 분 |
| SECOND | 초 |
| MILLISECOND | 천 분의 일 초 |
| ZONE_OFFSET | GMT 기준 시차 |
| AM_PM | 오전 / 오후 |