私は、オブジェクトをMap<String, Command>
に追加し、このコマンドに関連するクラスを書くことによって、新しいコマンドを追加することをサポートするjavaでシェル実装を書いています。java:動的クラスキャスト
commandList.put("sort", new sort()); // sort extends Command
各コマンドはConsumer<T>
オブジェクト(Tコマンドのクラスである:例えばソート)を用いる方法基準にオプション名を関連付けた複数OptionsDefinition<T>
Sを有しています。
私は私がタイプsort
のthis
を渡す必要があるために、非静的を参照する方法は同じコマンドの属性の値を混合せずに自分の殻に二度同じコマンドを呼び出すことができるようにしたいですmy sortコマンドの例ではConsumer<sort>
です。
私は私が持っているもの変換することができます方法を知りたい:それに
Command sort = commandList.getCommand("sort");
:
sort sort = commandList.getCommand("sort");
は
option.getCallback().process(sort); // sort is the reference to this
を使用できるようにするには、行うことが可能ですそう ?
「ソート」の実装が1つしかない場合は、その1つの実装を使用するだけで、ルックアップする必要はありません。実装が複数ある場合は、キャストを使用します。 –