2013-02-16 1 views
2
나는 효과적인 자바 책을 읽고 발견

항목 7이 다음의 예를 인용게시 된 API에 경고를 추가하는 기존 깰 수있는 방법 클라이언트

네 개의 클래스 : 이 종료 자에게 섹션을 피하십시오 명시적인 종료 메서드 패턴 (FileInputStream, FileOutputStream, Timer 및 Connection)에는 종결 메서드가 호출되지 않을 경우 안전망 역할을하는 종결 자 이 있습니다. 불행히도 이러한 종결자는 경고를 기록하지 않습니다. API를 게시 한 후 일반적으로 이러한 경고는 이 될 수 없습니다. 기존 클라이언트를 손상시키는 것 같습니다.

내 질문은 어떻게됩니까? 클라이언트가 java 프로세스의 출력을 파싱하고 이러한 여분의 경고가 어떻게 든 파싱을 중단 할 수 있다면 이것이 일어날 것이라고 상상할 수있는 유일한 방법입니다.

다른 이유가있을 것입니다.

답변

0

사실, 왜 그런지 알 것 같습니다. 이 책은 말한다 :

는 기존 고객

을 깰를 나타납니다 여기 암시 지금까지 벌금을 실행중인 클라이언트가 갑자기 경고 메시지를주고 시작하는 것입니다 그리고 너무에서 무슨 생각 경고는 finalizer 메서드에서 오는 것처럼 임의의 시간. 그것은 마치 뭔가가 클라이언트에 잘못되어있는 것처럼 보일 것입니다.

여기서 핵심은 "나타나는"단어입니다. 나는 클라이언트 논리가 실제로 이것으로 인해 깨지거나, 깨지는 것처럼 보이는 경우를 생각할 수 없다.

관련 문제