2

Runnable クラスのコンストラクターを受け取り、入力されたコンストラクターに従って特定の方法で実行するメソッドを作成しようとしています。

だから私はこのようなことができるようにしたい:

executeInParallel(someRunnable::new)
executeInParallel(someOtherRunnable::new)

私の質問はexecuteInParallel、パラメーターで定義した Runnable コンストラクターを渡すことができるようにするには、どのようにメソッドを定義すればよいですか? 基本的に私の質問は、それを行うために、このメソッドをどのように定義すればよいですか? void executeInParallel(??){ ... }

ただし、関数インターフェイスにパラメーターとして準拠するメソッドしか持てないようです。そのため、executeInParallel複数のxRunnable::newコンストラクターを受け入れる単一のパラメーターで定義することはできません。ある種のファクトリーを使用せずにこれを行う方法はありますか?パターン?

これを行う理由は、インスタンスではなくコンストラクターを渡したいからです。executeInParallel の外でインスタンスを生成することはできません。そのメソッド内で生成する必要があります。また、さまざまなパラメーターを取るさまざまなコンストラクター渡したい

前もって感謝します

編集 申し訳ありませんが、うまくいけば、質問をもう少し明確にしました。

4

1 に答える 1