我有一个父类,它定义了一系列链接器方法(返回“this”的方法)。我想定义多个包含它们自己的链接器方法但也“覆盖”父方法的子类,以便返回子类的实例而不是父类。
我不想在每个子类中重复相同的方法,这就是为什么我有一个包含所有子类共享的方法的父类。谢谢。
class Chain {
public Chain foo(String s){
...
return this;
}
}
class ChainChild extends Chain {
//I don't want to add a "foo" method to each child class
/*
public ChildChain foo(String s){
...
return this;
}
*/
public ChainChild bar(boolean b){
...
return this;
}
}
ChainChild child = new ChainChild();
child.foo().bar(); //compile error: foo() returns a "Chain" object which does not define the bar() method.