私はclass好きです。私は議論としてTest渡しclassています。
以下のコードの違いは何ですか:
Map maps = new HashMap();
maps.put("ARG_ID",Test.class);
と
Map maps = new HashMap();
maps.put("ARG_ID",this);
最初のフォームは、 のインスタンスへの参照を渡しますClass。2 番目の形式は、クラスのインスタンスthisである参照を渡します。これらは 2 つのまったく異なるオブジェクトです。
ジェネリックを使用してキー/値の型を記述すると、何をしようとしているのかがより明確になり、コンパイラは間違った種類の値を追加しようとするのを防ぎます。
Test.classは をClass表すオブジェクトでTest、リフレクションとジェネリックに使用されます。thisは、クラスで参照されている場合、作業中のクラスの現在のインスタンスです。