所以,我有一个抽象类充当父类,这就是我想要发生的事情。
在抽象类中:
public void run(){
while(!booleanStatement){
//do specific stuff here
}
}
在儿童班:
public class extends parentClass{
public void run(){
//do child stuff here effected by the while loop above
}
有没有办法让这种情况发生? super()也许?
答案 0 :(得分:11)
不确定。只需定义一个额外的抽象方法:
public final void run(){
while(!booleanStatement){
doRun();
}
}
public abstract void doRun();
在这种情况下,子类不能覆盖run()
并且强制为doRun()
提供实现循环内部工作的实现。
答案 1 :(得分:1)
是的,调用super.run()
将执行父方法。
所以你可以通过做类似的事来扩展它:
public void run() {
super.run();
//do child stuff
}
答案 2 :(得分:1)
在抽象类中:
public void run(){
while(!booleanStatement){
doStuff();
}
}
protected abstract void doStuff();
在儿童班:
public class extends parentClass{
protected void doStuff() {
// do something
}
这样的事情会发生。