더북(TheBook)

예제 2

java.util.Date 클래스와 파생된 java.sql.Date 클래스는 동일 이름을 공유한다(그림 3.13 참조). 컴파일러가 기초 클래스와 파생 클래스 이름이 동일한 것을 불평하지 않는 이유는 두 클래스가 다른 패키지에 속해 있기 때문이다. 하지만 두 클래스의 사용자 입장에서는 아주 혼란스럽다. 예를 들어, 프로그램에서 두 클래스를 동시에 import로 가져오면, 클래스 이름을 명시적으로 한정하는 방법을 사용하여 수동으로 해소해야 하는 이름 모호성 문제를 초래할 것이다.

 

▲ 그림 3.13 JDK에서 이름이 동일한 Date 클래스(예제 2)

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