Java中有没有办法逐步更改类名?

时间:2013-02-09 16:47:32

标签: java migration classname

我有一大堆使用XXX类的Java代码。随着时间的推移,类的含义已经改变,名称不再合适。为了使代码更具可读性,我想将类的名称更改为YYY。

一个选项是在一次通过中编辑所有文件并将XXX更改为YYY,但该类的实际名称不是唯一的 - 还有其他类具有相同的名称,不同的包 - 所以我需要看看代码。我希望能够进行一些更改,测试它是否正确,并进行更改,再测试一些等等。在此过渡期间,我希望能够互换使用YYY和XXX。最终我会消除XXX。

我需要的是一个“别名”概念,我可以将YYY和别名设为XXX,但Java没有这个。

我可以使用所有相同的构造函数和方法使YYY成为XXX的子类。在变量声明为XXX的情况下,这将正常工作,并且我指定了YYY类型的值。它也可以在方法参数为XXX的情况下工作,并传递YYY。但是当参数声明为YYY并且我有一个要发送的XXX值时,它将无法正常工作。

我可以将YYY注入到继承中,因此XXX扩展了YYY,但是我遇到了与上面相同的问题:在混合使用XXX声明和YYY值的代码中存在问题。

过渡时间需要几个月。在这段时间里,我不关心性能或效率,我只需要编译并运行得足以进行测试。 有关最佳做法的建议,允许在Java代码体中逐步更改类名吗?

更新

下面的答案是虽然在Java中无法做到这一点,但也没有理由。我随后安装并重构了代码,并在此博客文章中写下了经验:Don’t Suffer Poor Names

1 个答案:

答案 0 :(得分:3)

使用Eclipse之类的IDE并使用其重构工具重命名该类。这将在使用它的任何地方自动更改它,更新导入等。

相关问题