如果我在一个类中有方法 public void send() {/* some code */}
并且这个类的子类也有一个方法 public void send() {/* some code*/}
,我如何确保 child 必须在它试图覆盖的 send() 方法中的某处调用 super.send() ?
我想知道这一点,因为我在 API 中编写过,如果您在覆盖它时不调用该方法的 super,它会抛出一个异常,告诉我我没有调用 super 方法。这是硬编码还是可以用 Java 中的一些关键字来完成?
最佳答案
你真的不能,但你可以...
class MySuperClass {
public final void send() {
preSend();
// do the work...
postSend();
}
protected void preSend() {
// to be overridden in by sub classes
}
protected void postSend() {
// to be overridden in by sub classes
}
}
关于java - 我如何确保在 child 中调用 super 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6092705/