java判断class子类或父类的实例方法
我们首先看代码:
Classc=ArrayList.class; c.isPrimitive();//判断c是否为基本数据类型 c.isAssignableFrom(List.class);//判断c是否是List类的子类或父类 c.getGenericType();//得到泛型类型
实例:通过反射得到List
packagecom.zf.target; importjava.lang.reflect.Field; importjava.lang.reflect.ParameterizedType; importjava.lang.reflect.Type; importjava.util.List; importjava.util.Map; classT{ Lista; Listb; //Listl; Mapmap; intc; } classA{} classB{} publicclassTest9{ publicstaticvoidmain(String[]args){ Classtc=T.class; Field[]fields=tc.getDeclaredFields(); for(Fieldf:fields){ Classfc=f.getType(); if(fc.isPrimitive()){ System.out.println("基本数据类型:"+f.getName()+""+fc.getName()); }else{ if(fc.isAssignableFrom(List.class)){//判断是否为List System.out.println("List类型:"+f.getName()); Typegt=f.getGenericType();//得到泛型类型 ParameterizedTypept=(ParameterizedType)gt; Classlll=(Class)pt.getActualTypeArguments()[0]; System.out.println("\t\t"+lll.getName()); } } } } }
内容扩展:
java如何判断一个类是否是另一个类的子类
ClassclazzB=B.class; ClassclazzD=D.class; booleanisFather=clazzD.isAssignableFrom(clazzB)); if(isFather){ System.out.println("D是B的父类"); }else{ System.out.println("D不是B的父类"); }
以上就是本次介绍的全部内容,感谢大家对毛票票的支持。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。