java.util 패키지는 자료구조(컬랙션 프레임워크)와 날짜 정보를 제공하는 클래스를 포함하고 있다.
이번 절에서는 날짜 정보를 제공하는 API를 알아보자.
❗Date와 Calendar은 현재 여러 문제들 때문에 잘 사용하지 않는다고 한다❗
대신 LocalDate, LocalTime, LocalDateTime을 사용한다.
https://madplay.github.io/post/reasons-why-javas-date-and-calendar-was-bad
https://madplay.github.io/post/java8-date-and-time
https://sujl95.tistory.com/3
▶ Date 클래스
객체 간에 날짜 정보를 주고 받을 때 매개변수나 리턴타입으로 주로 사용된다.
Date 객체의 toString( ) 메소드는 영문으로 된 날짜를 리턴하기 때문에 원하는 날짜 형식의 문자열을 얻고 싶다면 java.text 패키지의 SimpleDateFormat 클래스를 함께 사용하는 것이 좋다. 먼저 SimpleDateFormat 생성자의 매개값으로 형식 문자열을 전달한 다음, SimpleDateFormat 객체 + 도트 + format(Date객체)로 출력하면 원하는 형식의 날짜가 나온다.
cf. SimpleDateFormat의 생성자에 전달할 문자열의 형식은 API문서에 자세이 나와있음!
▶ Calendar 클래스
Calendar는 추상 클래스이므로 new 생성자로 객체를 생성할 수 없다. 따라서 Calendar클래스의 정적 메소드인 getInstance( ) 메소드를 이용해 현재 운영체제에 설정된 시간대를 기준으로 한 Calendar의 하위 객체를 얻어야 한다. Calendar의 하위 객체를 만들었으면 get( ) 메소드로 날짜와 시간에 대한 정보를 얻을 수 있다.
(복습) 추상클래스 : 미완성된 설계도(이름 통일&규격 제시), 추상메소드를 포함하고 있고, 상속을 통한 오버라이딩을 강제함
정적 메소드 : 객체 생성 없이 클래스 이름으로 메소드를 호출할 수 있음
'JAVA > 혼공자' 카테고리의 다른 글
[혼공자] Chapter 12-2 스레드 제어 (1) | 2022.08.17 |
---|---|
[혼공자] Chapter 12-1 멀티 스레드 (1) | 2022.08.15 |
[혼공자] Chapter 11-1 java.lang 패키지 (String, Wrapper, Math) (1) | 2022.08.13 |
[혼공자] Chapter 11-1 java.lang 패키지 (Object, System, Class) (1) | 2022.08.13 |
[혼공자] Chapter 10. 예외처리 (1) | 2022.08.09 |