2012-07-17 4 views
1

부모 클래스에 어떤 메소드 doIt(...)과 몇 개의 내부 클래스가 있습니다. 이 메소드의 구현을 변경했습니다. 메소드 서명이 변경되지 않았습니다. 그 클래스의 논리는 복잡해졌으며 호출 스택을 찾을 시간이 없습니다. 프로젝트를 재건 한 후, 부모 클래스가 보였으며 클래스의 내부 클래스 파일이 다시 컴파일되었습니다. 이제 업데이트 된 시스템으로 패치 시스템을 수정해야합니다. 문제는 실제로 부모 메서드 구현 만 변경된 경우 내부 클래스도 패치의 일부가되어야합니까?내부 클래스를 외부에서 패치해야합니까?

답변

2

*.java 파일을 다시 컴파일하면 모든 클래스가 하나의 클래스 또는 모든 클래스를 변경했는지에 관계없이 생성됩니다.

내부 클래스의 코드 만 변경하면 패치해야합니다. IMHO, 나는 기회를 가지지 않을 것이다. 그리고 나는 일반적으로 그렇게하는 것에 거의 불이익이 없기 때문에 전체를 많이 패치 할 것이다.

+0

감사합니다. 실제로 부모 클래스 클래스 파일과 관련이없는 변경 사항이있는 경우 내부 클래스 클래스 파일이 호환되는지 확인해야합니다. –

0

실제로 변경된 클래스 만 패치해야합니다. 내 경우 엔 바깥 쪽이야. 따라서 대답은 : 아니오, 변경된 부분을 구현 한 외부 클래스 만 패치해야합니다.