国产成人AV无码一二三区,少女1到100集,国产精品久久久久精品综合紧,巜公妇之诱感肉欲HD在线播放

文章 > java基础 > java使用ParameterizedType实现泛型

java使用ParameterizedType实现泛型

头像

小妮浅浅

2021-05-11 09:20:073702浏览 · 0收藏 · 0评论

本教程操作环境:windows7系统、java10版,DELL G3电脑。

1、过程

(1)测试属性类型

(2)打印type与generic type的区别

(3)测试参数类型

(4)测试返回值类型

2、实例

public class Client {
 
    private Map<String, Object> objectMap;
 
    public void test(Map<String, User> map, String string) {
    }
 
    public Map<User, Bean> test() {
        return null;
    }
 
    /**
     * 测试属性类型
     *
     * @throws NoSuchFieldException
     */
    @Test
    public void testFieldType() throws NoSuchFieldException {
        Field field = Client.class.getDeclaredField("objectMap");
        Type gType = field.getGenericType();
        // 打印type与generic type的区别
        System.out.println(field.getType());
        System.out.println(gType);
        System.out.println("**************");
        if (gType instanceof ParameterizedType) {
            ParameterizedType pType = (ParameterizedType) gType;
            Type[] types = pType.getActualTypeArguments();
            for (Type type : types) {
                System.out.println(type.toString());
            }
        }
    }
 
    /**
     * 测试参数类型
     *
     * @throws NoSuchMethodException
     */
    @Test
    public void testParamType() throws NoSuchMethodException {
        Method testMethod = Client.class.getMethod("test", Map.class, String.class);
        Type[] parameterTypes = testMethod.getGenericParameterTypes();
        for (Type type : parameterTypes) {
            System.out.println("type -> " + type);
            if (type instanceof ParameterizedType) {
                Type[] actualTypes = ((ParameterizedType) type).getActualTypeArguments();
                for (Type actualType : actualTypes) {
                    System.out.println("\tactual type -> " + actualType);
                }
            }
        }
    }
 
    /**
     * 测试返回值类型
     *
     * @throws NoSuchMethodException
     */
    @Test
    public void testReturnType() throws NoSuchMethodException {
        Method testMethod = Client.class.getMethod("test");
        Type returnType = testMethod.getGenericReturnType();
        System.out.println("return type -> " + returnType);
 
        if (returnType instanceof ParameterizedType) {
            Type[] actualTypes = ((ParameterizedType) returnType).getActualTypeArguments();
            for (Type actualType : actualTypes) {
                System.out.println("\tactual type -> " + actualType);
            }
        }
    }
}

以上就是java使用ParameterizedType实现泛型的方法,希望能对大家有所帮助。更多Java学习指路:Java基础

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

老公弄我一边干一边说粗话| 藤木凉子| 儿媳妇免费播放全部电视剧| 韩浸免费观看下拉式浸画软件测评| 国产在线观看免费全集电视剧网站| 人口兽猪马狗第1集| 日本大片又大又好看的PPT| 男人一旦舌吻你私处说明什么心理 | 全飞秒手术2024价目表| 翁止熄痒苏钥第9章的内容| 爱的释放| 正阳门下电视剧全集免费观看| 天美麻花星空影视免费观看电视剧 | 一路向西| 放荡的女兵伦理2| 少妇高潮喷水久久久久久久久| 理伦片丰满妓女院| 主人~我错了请把它关掉歌词| 《魅魔之耻》1~4集免费看| 《交换做爰》在线观看| 公憩止痒小说原著叫什么名字| 吃瓜网热门事件| CSGO未满十八岁能玩多久| 周翊然| 皇上被群臣扒开腿狂C| 泰国电影《初次深交流》| 瑶瑶被躁在卧室里被吸在线观看| 啵啵影院| 女人高潮抖动多久能恢复| 欧洲最强女RAPPER免费| 免费观看已满十八岁电视剧直播| 爸老师电影全集免费播放在线观看| 《请好好疼爱里面》免费观看 | 电影《老公上班后》免费观看| 星空麻花MV高清| 妈妈你真棒插曲最后接吻是谁| 韩国我是歌手| AAAAABBBBBB级是什么.| 免费观看已满十八岁电视剧美国| 每天晚上都在汆肉中度| 欧美大片免费PPT