时间:2021-05-19
我们首先看代码:
Class c = ArrayList.class;c.isPrimitive(); //判断c是否为基本数据类型c.isAssignableFrom(List.class); //判断c是否是List类的子类或父类c.getGenericType(); //得到泛型类型实例:通过反射得到List<T> 集合中的泛型类型
package com.zf.target; import java.lang.reflect.Field;import java.lang.reflect.ParameterizedType;import java.lang.reflect.Type;import java.util.List;import java.util.Map; class T{ List<A> a; List<B> b;// List l ; Map<Integer, String> map ; int c;} class A {}class B{} public class Test9{ public static void main(String[] args) { Class tc = T.class; Field[] fields = tc.getDeclaredFields(); for (Field f : fields) { Class fc = 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()); Type gt = f.getGenericType(); //得到泛型类型 ParameterizedType pt = (ParameterizedType)gt; Class lll = (Class)pt.getActualTypeArguments()[0]; System.out.println("\t\t" + lll.getName()); } } } } }内容扩展:
java 如何判断一个类是否是另一个类的子类
Class clazzB = B.class; Class clazzD = D.class; boolean isFather = clazzD.isAssignableFrom(clazzB)); if(isFather){ System.out.println("D是B的父类"); }else{ System.out.println("D不是B的父类"); }以上就是本次介绍的全部内容,感谢大家对的支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
1.单继承父类也叫基类子类也叫派生类如下所示,继承的关系:继承的书写格式:class子类(父类):方法实例:classAnimal:defeat(self):p
本文实例讲述了Java基础之方法重写和多态。分享给大家供大家参考,具体如下:示例代码:子类的方法与父类的方法具有相同的返回类型和签名,子类方法重写父类方法。cl
本文实例讲述了java的继承原理与实现方法。分享给大家供大家参考,具体如下:继承1.java中是单继承的。每个子类只有一个父类。语法:子类extends父类2.
本文实例讲述了JavaScript中的类与实例实现方法。分享给大家供大家参考。具体如下:JavaScript中没有父类,子类的概念,也没有class和insta
本文实例讲述了java动态绑定和静态绑定用法。分享给大家供大家参考,具体如下:背景1.当子类和父类存在同一个方法,子类重写了父类的方法,程序在运行时调用的是父类