私がいくつかのクラスを持っているとしましょう:
public class A {
private int val = 0;
public int getVal() {
return val;
}
public void addFrom(A otherA) {
this.val += otherA.val;
if (otherA.val > 0)
otherA.val = 0;
else
otherA = Math.abs(otherA.val);
}
}
otherAのval変数を使用する代わりにgetterメソッドを使用する必要がありますか?そうする方が良いスタイルですか?
編集:これはクラスの非常に単純化されたバージョンであり、読むのに非常に時間がかかります。しかし、怠惰な初期化が行われている、このクラスにアクセスする他のメソッドがあると仮定します。これがより明確になるようにサンプルメソッドを更新しましたが、私の質問が他のオブジェクトへのアクセスに関係していることは明らかだと思います。変数であり、「これ」ではないものに直接変数アクセスを使用することが偽物であるかどうかを知りたい。