假设内嵌类我有这些类:与超类使用重构
class GoodClass
{
//... stuff...
public GoodClass(...) {...}
//... stuff...
}
class BadClass extends GoodClass
{
public BadClass(...) {super(...);}
}
class SomeOtherClass extends BadClass
{
//... stuff...
}
我想删除BadClass
和使用GoodClass
无处不在。
有没有办法用IntelliJ IDEA轻松实现?因此,它应该用GoodClass直接替换BadClass的所有用法:应该更改变量/字段类型,应该替换构造函数调用,继承类应该更改它们的父代,以及其他所有事情,如果我忘记了某些内容。
我试过使用“内联类”,但它不符合我的期望。
你有没有尝试过简单的找到所有,替换(按Ctrl + Shift + R)> BadClass与GoodClass?然后删除改名BadClass,显然 –
也许不是直接的,因为你正在做的是不是全吹重构。你能保证'BadClass'和'GoodClass'之间的使用是相互兼容的吗?也就是说,在'BadClass'中调用的任何方法是否会返回与'GoodClass'相同的东西? – Makoto
@ cricket_007查找/替换作品,但不完美。例如。如果我有一个字段“BadClass badClass”,我希望在重构之后有一个“GoodClass goodClass”(类似于类重命名重构)等等。 – kan