当前位置: 首页 > wzjs >正文

国外设计公司网站app怎么推广运营

国外设计公司网站,app怎么推广运营,wordpress 虚拟流量,湖南中高风险地区1.父类用 Cat.class 拿到 Class 对象,作为反射起点;调用 getGenericSuperclass() 拿到带泛型信息的父类类型;判断并转换为 ParameterizedType ,再用 getActualTypeArguments() 提取泛型参数,最终可通过 getTypeName() …

 1.父类

  1. 用 Cat.class 拿到 Class 对象,作为反射起点;
  2. 调用 getGenericSuperclass() 拿到带泛型信息的父类类型;
  3. 判断并转换为 ParameterizedType ,再用 getActualTypeArguments() 提取泛型参数,最终可通过 getTypeName() 等方法查看参数具体类型

1. Class<Cat> catClass = Cat.class;

  • 作用:获取 Cat 类的 Class 对象,这是反射的基础入口。通过 Class 对象,能动态获取类的结构(比如父类、接口、方法等),后续对泛型父类的操作都基于它展开。

2. Type genericSuperclass = catClass.getGenericSuperclass();

  • 作用:获取 Cat 类带有泛型信息的直接父类类型 。
    • 如果父类是泛型类(比如 class Cat extends Animal<String> ),它能保留泛型参数(如 String );
    • 若父类没使用泛型,返回结果和 getSuperclass() 类似(但类型是 Class )。
  • 对比
    •   getSuperclass() 只能获取父类的 Class 对象,丢失泛型参数 。比如父类是 ArrayList<String> ,用它拿到的是 ArrayList.class ,看不到 <String> ;]
    •   getGenericSuperclass() 能拿到包含 <String> 的完整泛型父类信息 。

3. ParameterizedType 相关逻辑

  • 判断与转换

    j

    if(genericSuperclass instanceof ParameterizedType){ParameterizedType parameterizedType = (ParameterizedType) genericSuperclass;
    }
    
    • 先通过 instanceof 判断父类类型是否是参数化类型(即带泛型的类型,如 ArrayList<String> 、自定义泛型父类 Animal<String> ) 。\
    • 强转
    • 转换后,就能通过 ParameterizedType 的 API 提取泛型参数。

 

  • getActualTypeArguments()

     

    Type[] actualTypeArguments = parameterizedType.getActualTypeArguments();
    

     


    作用是获取泛型父类的实际类型参数 。
    •         比如父类是 Animal<String> ,调用后返回 Type 数组,里面存着 String.class 对应的 Type 信息;
    •         若父类是 Map<String, Integer> ,则返回 [String, Integer] 对应的 Type 数组。

 

 

2.接口

// 1. 获取 Mouse 类的 Class 对象,反射的入口
Class<Mouse> mouseClass = Mouse.class;  // 2. 获取 Mouse 类实现的所有接口的“泛型类型信息” 
Type[] genericInterfaces = mouseClass.getGenericInterfaces();  // 3. 遍历每个接口的类型信息
for (Type g : genericInterfaces) {  // 4. 判断接口是否是“参数化类型”(即带泛型的接口,比如 MyInterface<String>)if(g instanceof ParameterizedType){  // 5. 强转为 ParameterizedType,才能提取泛型参数ParameterizedType parameterizedType = (ParameterizedType) g;  // 6. 获取接口的实际泛型参数(比如 <String> 里的 String)Type[] actualTypeArguments = parameterizedType.getActualTypeArguments();  // 7. 遍历泛型参数,输出类型名称for(Type a : actualTypeArguments){  System.out.println(a.getTypeName());  }}
}

 

  • getGenericInterfaces()
    作用是获取当前类实现的所有接口的 “泛型类型信息” 。
    • 和普通 getInterfaces() 区别:getInterfaces() 只能拿到接口的 Class 对象(丢失泛型参数);
    • getGenericInterfaces() 能保留泛型信息(比如 MyInterface<String> 完整保留)。

 

 

 

 

3.属性

public static void main(String[] args) throws Exception {// 1. 获取目标类的 Class 对象,作为反射入口Class<User> userClass = User.class;  // 2. 获取指定字段的 Field 对象(getDeclaredField 支持任意访问修饰符字段)Field mapField = userClass.getDeclaredField("map");  // (可选)若字段为非 public,解除访问限制mapField.setAccessible(true);  // 3. 获取字段带泛型信息的 Type 对象Type genericType = mapField.getGenericType();  // 4. 判断是否为参数化类型(带泛型的类型)if (genericType instanceof ParameterizedType) {  // 强转为 ParameterizedType,用于解析泛型参数ParameterizedType parameterizedType = (ParameterizedType) genericType;  // 5. 提取泛型的实际类型参数,返回 Type 数组Type[] actualTypeArguments = parameterizedType.getActualTypeArguments();  // 6. 遍历泛型参数,获取并输出类型名称for (Type typeArg : actualTypeArguments) {  System.out.println(typeArg.getTypeName());  }}
}

 

 

  1. 获取 Class 对象:拿到目标类的反射入口,用于后续操作。
  2. 获取 Field 对象:通过getField/getDeclaredField定位具体成员变量。
  3. 获取泛型类型:用FieldgetGenericType拿到带泛型信息的Type对象。
  4. 判断并强转:检查Type是否为ParameterizedType,是则强转,为解析泛型做准备。
  5. 提取泛型参数:通过强转后的对象调用getActualTypeArguments,得到泛型参数数组。
  6. 遍历处理:循环泛型参数数组,用getTypeName获取并输出 具体类型名

 

 

4.获取方法参数上的泛型信息

 

 

 

 

 

总结

场景获取泛型类型的关键 API说明
字段泛型Field.getGenericType()针对单个字段的泛型解析
接口泛型Class.getGenericInterfaces()返回所有接口的泛型类型数组
父类泛型Class.getGenericSuperclass()返回直接父类的泛型类型
自身类泛型Class.getTypeParameters()TypeVariable[]类定义时声明的泛型变量(如 class MyClass<T> 中的 T

 

http://www.dtcms.com/wzjs/286965.html

相关文章:

  • 南宁网站建设 超博网络汕头seo排名
  • 宿迁网站建设价格低百度关键词推广费用
  • 餐厅网站开发背景谷歌浏览器直接打开
  • 品牌营销推广要怎么做seo推广软件代理
  • 网站制作和美工企业网站seo案例
  • 专业做幼儿园设计的网站如何创建网站
  • 怎么做能上谷歌网站重庆seo什么意思
  • 做婚庆的网站有哪些内容搜索网站排名优化
  • 想学做网站seo 在哪学 电话多少搜索引擎推广实训
  • 北京网站建设项目做网站用什么软件
  • wordpress企业网站制作临沂做网站建设公司
  • 网站建设第一品牌网站百度收录查询
  • wordpress开启子站点怀化网络推广
  • 创建手机网站模版网络培训机构
  • 网站建设开源项目github关键词是网站seo的核心工作
  • 同仁县wap网站建设公司上海高端seo公司
  • 域名 阿里云无忧seo
  • 软件高端开发seo中文含义是什么
  • 网上图书商城网站设计广州优化防控措施
  • 中信建设有限责任公司 电话搜索引擎优化的主要特征
  • 高端网站建设文案大片ppt免费下载安装
  • 外贸企业网站建设网站建站教程
  • 自己做一网站_多做宣传.ai智能营销系统
  • 深圳做网站企业免费推广平台
  • 网站的文件结构深圳全网推广公司
  • 公司网站建设北京seo学途论坛网
  • wordpress虚化主题中山seo关键词
  • 南昌教育网站建设系统优化软件排行榜
  • 商业活动的网站建设手机怎么建自己的网站
  • 企业网站建设的平台朋友圈广告投放