まあ例外処理とのインタフェースに静的フィールドを初期化します正しく処理されません。しかし、私はインターフェイスに静的なブロックを置くことはできません。私はEnumを構築することを考えましたが、すでにこの問題に直面していた人がいました。実際には、私はインターフェイスを使用する必要があるので、この静的フィールドをクラスに入れる機会はありません。実際に、私はインターフェイスで次の操作を実行したいと思い、
ありがとうございます。
まあ例外処理とのインタフェースに静的フィールドを初期化します正しく処理されません。しかし、私はインターフェイスに静的なブロックを置くことはできません。私はEnumを構築することを考えましたが、すでにこの問題に直面していた人がいました。実際には、私はインターフェイスを使用する必要があるので、この静的フィールドをクラスに入れる機会はありません。実際に、私はインターフェイスで次の操作を実行したいと思い、
ありがとうございます。
これはやや間接的に処理できます。 (コードはテストされていません)
public interface ObjectMethods
{
public static class CONSTANTS
{
static final Method getModulus ;
static
{
try
{
getModulus = RSAPublicKey.class.getMethod("setModulus", byte[].class, short.class, short.class);
}
catch (Exception cause) { //handle it }
}
}
}
例外を巻き込むtry/catchブロックでロジックをラップする静的ヘルパークラスを作成できますか?
public static class ObjectMethodHelper
{
public static Method getModulusMethod() {
try {
return RSAPublicKey.class.getMethod("setModulus", byte[].class, short.class, short.class);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
}
public interface ObjectMethods
{
static Method getModulus = ObjectMethodHelper.getModulusMethod();
}
あなたの好きなことに感謝しますが、私はエモリーのアプローチを好むと思います。 =) – mozi
どのようにしてメソッドを割り当てますか?getModulus = ObjectMethodHelper.getModulusMethod(); public static void getModulusMethod()の戻り値の型は無効です。 –
@AbhijitChakra:いいキャッチ。一定。 – StriplingWarrior
なぜインターフェイスを使用する必要がありますか?これは有用な要求のようには聞こえません...これは深刻なアプリケーションコードです。とにかくインターフェイスに入れるものは何もありません –
@pvblivs私のアプリケーション/フレームワークを "設計"したとき、私はinferfaceを持つことに決めました。それには理由がありますが、意図したのと同じ機能を実装するための別の方法があると思います。 – mozi