通过相同的方法重写从super运行的扩展类(Java)
我知道这个标题很让人困惑,但我想不出另一种说法
所以,我试图实现的是:我看到一些java程序有一堆子类,它们在它们的超类中有一个方法,并且它们都在调用super方法时运行。 我想做的是,当我调用同步器时,让同步器的任何一个子类运行它们自己的RunAll方法。RunAll方法
我尝试过很多东西,也在谷歌上搜索过很多东西,但我发现这些东西对我不起作用
这就是我拥有的:超级班级
public class Synchroniser
{
public Synchroniser()
{
RunAll();
}
protected void RunAll()
{
System.out.println("RunAll");
}
}
子类:
import org.lwjgl.input.Keyboard;
public class ArrayList extends Synchroniser
{
public ArrayList()
{
}
public static void Keybind(Info info)
{
info.Toggle();
}
@Override
protected void RunAll()
{
System.out.println("Ran ArrayList");
}
}
# 1 楼答案
你似乎在寻找观察者模式。你用谷歌搜索过吗?或者是模板方法
您的代码不匹配(这可能就是它不工作的原因),但您对问题的描述是匹配的
# 2 楼答案
更新
根据你最近的评论,@Luchian是正确的。下面是一个应用于您的用例的简单示例——ps:使用现有的JDK类作为您自己的类的名称(ArrayList)不是一个好主意: