더북(TheBook)

이렇게 호출하면 또 다른 클래스인 DayOfWeek의 객체를 돌려받는다. 달력에서 특정 달의 1일을 얼마나 들여 써야 하는지 계산하려면 요일의 숫자 값을 알아야 한다. 요일의 숫자 값을 알려 주는 메서드는 getValue다.

int value = weekday.getValue();

for (int i = 1; i < value; i++)

    System.out.print("    ");


getValue 메서드는 주말이 주의 마지막에 오는 국제 관례에 따라 월요일이면 1, 화요일이면 2 등으로 반환한다. 일요일의 숫자 값은 7이다.

Note ≣

다음과 같이 메서드를 연이어(chain) 호출할 수도 있다.

int value = date.getDayOfWeek().getValue();

첫 번째 메서드 호출은 date 객체에 적용되며, 결과로 DayOfWeek 객체를 반환한다. 그다음으로 반환받은 객체의 getValue 메서드를 호출한다.


완성된 프로그램은 책의 예제 소스에 있다(https://github.com/gilbutITbook/006985/blob/master/ch02/sec01/Cal.java). LocalDate 클래스의 설계자들이 유용한 메서드 집합을 제공한 덕분에 달력 출력 문제를 쉽게 해결했다. 지금부터는 자신만의 클래스에 메서드를 직접 구현하는 방법을 배운다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.