generic instanceof

Martin Beránek martin.beranek na i.cz
Pátek Červen 13 08:53:25 CEST 2008


Zdravím konferenci,

narazil sem na zajímavý problém - nemůžu vygooglit řešení... navíc po přečtení 
tohoto: http://www.ibm.com/developerworks/java/library/j-jtp01255.html si 
nejsem jistý jestli řešení existuje, takže:

mám abstraktní třídu A<T>. V této třídě načítám pluginy (přes Class.forName) - 
rozhraní pro pluginy mám definované jako:

interface Plugin<T> {
	boolean execute(T param);
}

V třídě A bych před zavoláním execute potřeboval ověřit, že:

plugin instanceof Plugin<T>

tedy že plugin typově sedí k dané implementaci. Například:

"class Plugin1 implements Plugin<Number>" půjde zavolat z "class B extends 
A<Integer>" ale ne z "class C extends A<String>"

dále poznamenám že v abstraktní třídě A mám k dispozici proměnnou typu 
Class<T>

-- 
Martin Beránek


Další informace o konferenci Konference