더북(TheBook)

3.6.3 예제

예제 1(참조되지 않는 추상화)

이 예제는 JDK에서 사용하지 않는 클래스 버그 보고서*의 내용을 풀어쓴 것이다. sun.misc 패키지에는 초기 JDK 배포 시절로 되돌아가 JDK 내부적으로 다른 클래스에서 사용하던 클래스가 있었다. 나중에 sun.misc 패키지가 제공한 많은 서비스는 공개 API의 일부로 제공되었다. 결국 sun.misc 패키지의 원래 클라이언트들은 공개 API가 제공하는 서비스를 사용하기 시작했다. 이 때문에 sun.misc 패키지의 원본 클래스는 대부분 참조하지 않는 추상화가 되었다. 이런 예제 중 하나는 JDK 1.3에서 소개한 sun.misc.Service 내부 클래스로, JDK 1.6에서 공개 API의 일부인 java.util.ServiceLoader 클래스를 도입하면서 정리되었다. 따라서 원본 sun.misc.Service는 미활용 추상화다.

 

 


* 원본 버그 보고서인 “JDK-6852936: Remove unused classes from sun.misc”는 http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6852936을 참조하자.

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