クラスをインスタンス化し、メソッドを実行するメイン メソッドを定義する基本クラスを定義したいと考えています。ただし、いくつかの問題があります。基本クラスは次のとおりです。
public abstract class Strategy
{
abstract void execute(SoccerRobot robot);
public static void main(String args)
{
Strategy s = new /*Not sure what to put here*/();
s.execute(new SoccerRobot())
}
}
派生クラスの例を次に示します。
public class UselessStrategy
{
void execute(SoccerRobot robot)
{
System.out.println("I'm useless")
}
}
これは、メイン アプリケーションとして使用するときにメイン メソッドで呼び出す必要がある単純な実行メソッドを定義します。ただし、そのためには、基本クラスのメイン メソッド内から派生クラスをインスタンス化する必要があります。これは不可能のようです。
派生クラスごとに main メソッドを繰り返す必要はありません。
これを行う正しい方法はありますか?