Thursday, February 26, 2015

how to maintain a list of static class and the instanciate from them




hello,




I have a list of uninstanciated class types and I wanted to call a static function from these



"Class<? extends PropControl>" (without using reflection) that would create a new corresponding object instance



but it appears I cant do that in java




so now I want to create a factory that takes a class type as aparameter to create the corresponding object instance




but this code dont compile:






Java Code:






public PropControl Create(Class<? extends PropControl> cls)
{
if(cls==HouseControl.class) <---- ERROR
{
here I create a new instance of HouseControl (that inherits PropControl)
}
}




I get this error :

incomparable types: Class<CAP#1> and Class<HouseControl>



where CAP#1 is a fresh type-variable:



CAP#1 extends PropControl from capture of ? extends PropControl




how do I achieve this ?




thanks







No comments:

Post a Comment