一部のノードには、特定のインターフェイスを実装するオブジェクトのみを含める必要があるツリー構造があります。しかし、そのインターフェースを拡張するインターフェースがあり、それらを実装するオブジェクトはノードに含まれるべきではありません。
したがって、オブジェクトが厳密に特定のインターフェイスを実装しているかどうかを確認する必要があります。
public interface IProcessCell {...}
public interface IMethodCell extends IProcessCell {...}
IProcessCell processInstance = new IProcessCell() {...}
IMethodCell methodInstance = new IMethodCell() {...}
/** Method implementing desired check */
public boolean check(IProcessCell instance) {...}
メソッド チェックは、processInstance の場合は true を返す必要がありますが、methodInstance の場合は false を返す必要があります