public <U> Class<? extends U> asSubclass(Class<U> clazz)

这是Java.lang.Class中的一个方法,作用是将调用这个方法的class对象转换成由clazz参数所表示的class对象的某个子类。用于窄化未知的Class类型的范围(class.foname()的返回值类型是Class<?>,所以必要的时候可以窄化它)

举例来说,

List<String> strList = new ArrayList<String>();

Class<? extends List> strList_cast = strList.getClass().asSubclass(List.class);

上面的代码将strList.getClass()获取的class对象转换成Class<? extends List>

isAssignableFrom

用来判断一个类Class1和另一个类Class2是否相同或是另一个类的超类或接口

results matching ""

    No results matching ""