重构值对象的疯狂继承层次结构 - 如何获取所有字段和类型的列表?
-
30-09-2019 - |
题
因此,基本上,我需要手动调整继承层次结构。我想让课程变得完美,没有额外的领域,而且只是DTO。但是,丢失并添加重复的字段真的很容易,而且很难看看我想要的是已经存在。我真的很喜欢拥有的东西是一种列出一堂课中的所有字段,包括其继承的字段(也是私人)。就像一个扁平的野外视图一样,没有守望者,固定器使一切都混乱。
我找到了一种用右键单击/文件成员在Netbeans中显示的方法,但是我无法复制Paste并将其保存在文本文件或其他任何内容中。
基本上只是这些列:
Name Type Superclass
id int
theDate java.util.Date com.something.AbstractDTO
...
有人知道该怎么做,还是更好的方法来做我想做的事?
解决方案
如果找不到预先存在的工具,则不难编写使用反思从DTO类中提取此信息的东西。您需要重新编译并重新运行该程序以进行更新,但这总比没有好。
其他提示
您可以使用Eclipse的“层次结构视图”。单击课时,您会得到其成员。单击“显示所有继承的成员”图标为您提供以成员类型(静态字段,静态方法,实例字段等)排序的视图。您可以以通常的方式,右键单击和“复制合格名称”选择实例字段。您将获得这样的东西,其中包括最初定义的成员的位置。
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”是乘法定义的。 (在层次结构视图中更容易看到。)
不隶属于 StackOverflow