参照で更新されたオブジェクトをセット内に持っています。オブジェクトのハッシュID([email protected]
)またはEclipse ID(id=356
)を使用して、スコープ外であっても常に自分の式ビューで見ることができる方法はありますか?eclipse - デバッグ時に常にオブジェクトを表示します
私はEclipse Neonを使用しています。
参照で更新されたオブジェクトをセット内に持っています。オブジェクトのハッシュID([email protected]
)またはEclipse ID(id=356
)を使用して、スコープ外であっても常に自分の式ビューで見ることができる方法はありますか?eclipse - デバッグ時に常にオブジェクトを表示します
私はEclipse Neonを使用しています。
ウルの質問は、私には非常に明確ではないですが、私はuがこの意味を推測:
私は、EclipseのデバッグIDまたはオブジェクトのハッシュによってref @ Oを行うことができる方法(内部Eclipseのおいしさ)を知らない。
しかしこれはかなり簡単に行うことができます:これを達成するために、デバッガで選択されている現在のフレームからの(長い)参照の方法でOに到達できるだけです。
最も簡単な方法は、何らかの静的なvarにOを設定するためのコードをいくつか追加することです。 Uは、現在のスタックフレームのコンテキストで実行されるJavaコードを実行できる「表示」ビューの助けを借りて、手動でデバッグ中に静的なvarを割り当てることさえできます。
ステップ:
MyWatcher.watches.put("a", o)
を追加するウルコードスルーMyWatcher.watches.get("a")
foo()
している場合でも、B/Cのマップは、私は全くの私のオブジェクトを見ることができるようにするために、ハッシュまたはEclipse IDを使用する意味O.public class MyCode {
public static void main(final String[] args) {
bar();
foo();
}
static void bar() {
final Set<Object> set = new HashSet<>();
for (int i = 0; i < 10; i++) {
final List<Integer> o = Arrays.asList(i);
set.add(o);
}
}
static void foo() {
System.out.println("bar");
}
}
public class MyWatcher {
public static final Map<String, Object> watches = new HashMap<>();
}
MyObjectクラスにtoString()メソッドを追加します。 Eclipseを使用すると、 右クリック(MyObject内) - >ソース - > Generate toString()を使用して行うことができます。 これで、MyObjectのハッシュIDではなく内容を見ることができます。
上のARの参照を保持していますスコープ外であっても、コード内の大きなHashSetでオブジェクトを失うと、参照オブジェクトがコードのどこかで更新されるため、これらのIDの1つを使用してオブジェクトを常に監視したいと考えています。 – user3499973
OPの質問は 'toString'ではなく、デバッグに関するものです。 –