我在包装public class Example
中有我的自定义com.classes
。
1。如何获得Class<Example> intance1
和Class<Example[]> instance2
?
我可以使用Class classInstance = Class.forName("com.classes.Example");
但是在这种情况下,我会收到原始类型类。
2。 创建 Class<Example[]> from Class<Example>
实例(正确)是不可能的吗?
答案 0 :(得分:4)
对于第一个问题,请使用类文字,它是类名,后跟.class
。
Class<Example> c = Example.class;
对于第二个问题,我没有看到Class
类中的任何方法来检索相同类型数组的Class
对象,例如无法从Class<Example[]>
获取Class<Example>
。但是您仍然可以使用类文字直接获取它。
Class<Example[]> c = Example[].class;
但是,看来可以为表示数组的类的组件类型获取Class
对象,即,与所需的对象相反,但是它返回Class<?>
。
Class<?> c = Example[].class.getComponentType();