作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
public class BaseClass {
public void start() {
// do something
}
}
public class ClassA extends BaseClass {
}
ClassA c = new ClassA();
c.start();
在下面的代码中,我想使用父类(super class)中定义的 start() 方法,我在许多其他开发人员的代码中看到,他们重写父类(super class)中的方法,然后调用父类(super class).这是有原因的吗?
public class ClassA extends BaseClass {
@Override
public void start() {
super.start();
}
}
最佳答案
清晰度?一些开发人员觉得在子类中显示方法更清晰。我不同意。这是多余的信息。
至少从 Java 5 开始,您可以添加一个 @Override,这样编译器会在签名更改/消失时告诉您。
构造函数除外。对于构造函数,您确实必须使用相同的签名和向上委托(delegate)来创建自己的构造函数。在这种情况下,省略并不等同。
关于Java - 扩展一个类并重用这些方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6462343/
我是一名优秀的程序员,十分优秀!