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
2 つの変数を受け取り、最初の属性を 2 番目のオブジェクトの値に設定する関数を作成する方が簡単かもしれません。またはこのようなもの。
何か案が?