регистрировать все изменения атрибутов класса
Для целей отладки мне нужно отслеживатьClass
атрибуты изменения.
Например, рассмотрим следующий класс:
class Test {
int myInt;
String myString;
...
public void setMyInt(int a) ...
public void setMyString(String s) ...
public printDebugLog();
}
void main() {
Test t = new Test();
t.setMyInt(5);
t.setMyString("Hello");
t.printDebugLog();
}
Я хочу выводить что-то вроде:
myInt => 5
myString => Hello
Простое решение - создавать журналы мгновенно. т.е. добавлениеLog
функция как следовать:
void Log(String s) {
System.out.println(s);
}
а затем закодироватьзадавать функции как ниже:
void setMyString(String s) {
myString = s;
Log("myString => " + s);
}
это требует всезадавать функции должны быть написаны по-разному, и мне интересно, есть лилучше решение для такого вопроса. Например, может быть проще (если возможно) создатьSetValue
функция, которая принимает две переменные и устанавливает для первого атрибута значение второго объекта. или что-то вроде этого.
Любая идея?