ma funziona anche facendo una cosa di questo tipo?

codice:
...

Object element = i.next();
String name = element.getClass().getName();
Class cls = Class.forName(name);
Object obj = cls.newInstance();
if(obj instanceof cls)
{ ... }

...