이 세터/게터쌍 뒤에 변수를 숨길 수있는 많은 이유 중 하나입니다 관련이 있습니다. 그런 다음 세터에서이 변수가 적절한 방식으로 수정되었음을 청취자에게 알릴 수 있습니다. 다른 사람들이 언급했듯이, 원하는 것을 정확히 수행 할 수있는 방법은 없습니다. 직접 구현해야합니다.
또는 Benjamin은 데코레이터 패턴이라는 재미있는 패턴을 제공합니다.이 패턴은 문제의 코드를 수정할 수없는 경우 유용 할 수 있습니다. You can look up more info at wikipedia
아이디어는 개체 주위에 호환되는 래퍼를 작성하는 것입니다. 문제의 개체가 MyClass 유형이라고 가정 해 보겠습니다.
class MyClass{
publc void doFunc(){...}
}
class MyLoggedClass extends MyClass{
MyClass myObject;
publc void doFunc(){
//Log doFunc Call
myObject.doFunc();
}
}
대신
MyClass object = new MyClass();
의 당신은
MyClass object = new MyLoggedClass(new MyClass());
지금 코드의 당신의 나머지 각 함수 호출 기록, 또는 통보됩니다 것을 제외하고, 정상에 따라 객체를 사용하는 것이 사용합니다 등등.
위키 백과에서 볼 수 있듯이, 이것은 일반적으로 클래스 질문에서 상속하지만, 귀하의 경우에는 가능하지 않을 수 있습니다.
디버깅의 목적을 위해이 일을 할 의향이 있습니까 또는 프로덕션 코드에서 이것을 사용 하시겠습니까? –
생산 코드 – Sinigami