そこで、Java の専門家に質問です。
テキスト ファイルに保持している定義がいくつかあります。それらがプロパティ ファイルであるとしましょう。さまざまなオブジェクトがあり、そのすべてがインターフェイスを実装しています。これを と呼びますCardable
。これらの定義をアタッチし、アプリケーション内で表示するためにそれらを取得するメソッドを保証します。
public interface Cardable {
public void attach(Card c);
public Card retrieve();
}
ここで、型が異なるこれらのオブジェクトの静的リストを作成すると、その型が定義で宣言された一連のクラスと一致するかどうかがわかります。
Thing.Bag.LeatherBag= ... (definitions)
このクラスを作成する場合 (アイデアを示すために定義を要約)
public class LeatherBag extends Bag {
...
}
public class Bag extends Thing {
...
}
public class Thing implements Cardable {
...
}
プロセスは、プリロード フェーズ中にリストを調べて、特定のクラスに最も具体的なカードを割り当てることです。これは、たとえば、指定されたより多くのクラスとして任意に定義されます (この規則により、Thing.Bag.LeatherBag は Bag.LeatherBag よりも具体的になります)。
文字列からクラス名を分割したら、instanceof を使用して、オブジェクトが (実装されていることを確認したらCardable
) 指定されたすべてのクラスのインスタンスであるかどうかを確認するにはどうすればよいでしょうか? Instanceof は型に関連しているようですが、型/クラス名を含む文字列には関連していないようです。