4

したがって、基本的に、継承階層を手動で調整する必要があります。クラスが完璧で、余分なフィールドがなく、単なるDTOであることが望まれます。ただし、迷子になったり、重複するフィールドを追加したりするのは非常に簡単で、探しているものがすでにそこにあるかどうかを確認するのは非常に困難です。私が本当に望んでいるのは、継承されたフィールド(プライベートも含む)を含む、クラス内のすべてのフィールドを一覧表示する方法です。ゲッターやセッターがすべてを乱雑にしない、フラットなフィールドのみのビューのように。

右クリック/ファイルメンバーを使用してNetBeansで表示する方法を見つけましたが、コピーして貼り付けてテキストファイルなどに保存することはできません。

基本的にこれらの列だけです:

Name     Type            Superclass
id       int  
theDate  java.util.Date  com.something.AbstractDTO
...

誰かがそれを行う方法、または私がやろうとしていることを行うためのより良い方法を知っていますか?

4

2 に答える 2

1

既存のツールが見つからない場合は、リフレクションを使用してDTOクラスからこの情報を抽出するものを作成するのは難しいことではありません。更新のためにプログラムを再コンパイルして再実行する必要がありますが、それは何もないよりはましです。

于 2010-12-03T20:47:56.200 に答える
1

Eclipse の「Hierarchy View」を使用できます。クラスをクリックすると、そのメンバーが取得されます。[継承されたすべてのメンバーを表示] アイコンをクリックすると、メンバーの種類 (静的フィールド、静的メソッド、インスタンス フィールドなど) で並べ替えられたビューが表示されます。通常の方法でインスタンス フィールドを選択し、右クリックして「修飾名をコピー」できます。メンバーが最初に定義された場所を含む、このようなものが得られます。

nz.ac.vuw.ecs.kcassell.cluster.MatrixBasedAgglomerativeClusterer.distanceMatrix
nz.ac.vuw.ecs.kcassell.cluster.MatrixBasedAgglomerativeClusterer.originalMatrix
nz.ac.vuw.ecs.kcassell.cluster.DisjointClusterer.originalMatrix
nz.ac.vuw.ecs.kcassell.cluster.DisjointClusterer.originalSeed1
nz.ac.vuw.ecs.kcassell.cluster.DisjointClusterer.originalSeed2
nz.ac.vuw.ecs.kcassell.cluster.MatrixBasedAgglomerativeClusterer.previousIteration
...

この例では、「originalMatrix」が複数定義されています。(階層ビューでさらに見やすくなります。)

于 2010-12-04T20:03:18.673 に答える