我必须对一个父类(super class)中的多个 Java 类进行一些覆盖。我使用了建议和快捷方式来做到这一点。 NetBeans 会自动覆盖这些方法。
但是当我需要改变父类(super class)中的一个方法时,我必须一个一个地做。有什么方法可以自动覆盖它们吗?
最佳答案
感谢 NetBeans,它可以轻松完成。
假设这是您的项目结构:
refactordemo
|-- Parent.java
|-- Child.java
这是示例代码:
Parent.java
package refactordemo;
public class Parent {
public static void main(String[] args) {
}
public String method1() {
return null;
}
}
Child.java
package refactordemo;
public class Child extends Parent {
public static void main(String[] args) {
}
@Override
public String method1() {
return super.method1();
}
}
请注意 method1()
的 class Child
覆盖 method1()
的 class Parent
.
现在,如果你想更改 method1()
的签名(返回类型、方法名称、参数)在 class Parent
并希望在所有子类中进行这些更改,那么 NetBeans 正是您所需要的。
- 进入Parent.java(父类)
- 找到您要更改其签名的方法(在本例中为
method1()
) - 右键点击方法名
- 转到重构 > 更改方法参数...
那里......你拥有一切。
您可以在这里做什么:
- 添加/删除参数。
- 更改现有参数的数据类型。
- 更改方法的访问修饰符。
- 更改方法的返回类型。
- 更改方法的名称。
完成所需的更改后,单击窗口底部的“重构”。
任何时候都比 ctrl-c 和 ctrl-v
好请注意,我使用的是 NetBeans 8.0.1,但据我所知,此功能自 NetBeans 7.3 以来就已存在
关于java - 有什么方法可以自动覆盖 NetBeans 中的方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31128980/