新しいクラスを作成するために継承する抽象クラス型があります。同等の例として、次のことを考慮してください。
public abstract class BaseClass {
public BaseClass(String input)
{
...
}
public abstract void doSomething();
public String getResult()
{
...
}
}
これで、BaseClass をオーバーライドして "doSomething" を実装してさまざまなアクションを実行できます (たとえば、実際に文字列を操作していた場合は、反転または大文字化しますが、実際にはそうではありませんが、これは単なる例です)。
最も一般的な使用法は次のとおりです。
BaseClass bc = new ExtendsBaseClass(input);
bc.doSomething();
String result = bc.getResult()
だから私はこれのための静的ラッパーメソッドを作りたいです。
実装したい:
public static String doSomethingForResult(String input)
{
BaseClass bc = /*new current type*/;
bc.doSomething();
return bc.getResult();
}
しかし、そのコメントを何に置き換えるか、またはそれを機能させる方法がわかりません。すべての実装クラスにこれを再実装するよう強制したくありません (それが概念的に可能である場合でも、それabstract static
は許可されていないためです。