假设我有一个抽象类:
abstract class DBTable {
abstract boolean append();
}
而且我还有一个继承自 DBTable 的子类:
// Client objects are rows of a database table
class Client extends DBTable {
@Override
boolean append() {
}
}
最后,假设我有一个 Client 的子类,我用它来表示 Client 对象的非规范化形式(我觉得这没问题。它都在同一个包中,并且 Client.Expand -is a- Client)。
我想做的是覆盖 Client.Expand 中的 append() 方法,并让它链接到 Client 中的 append() 方法,然后再返回做仅适用于子类的工作。像这样的东西...
// Expand is a member class of Client
static class Expand extends Client {
@Override
boolean append() {
super.append();
:
:
}
}
Java允许这样做吗?当我尝试覆盖已在父类中覆盖的方法时,我从 IDE 收到错误消息。似乎我应该能够覆盖一个被覆盖的方法以提供子类所需的额外实现,但也许 Java 不是为这种继承而构建的?