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

怎么建设自己导购网站抖音搜索关键词排名查询

怎么建设自己导购网站,抖音搜索关键词排名查询,用vs做html网站,建一个独立网站多少钱泛型 泛型泛型数组与泛型容器如何解决擦除导致的类型丢失 泛型 我们接着上面一篇文章继续聊泛型&#xff0c;如果没有看过的&#xff0c;欢迎阅读thinking in java - 泛型1 泛型数组与泛型容器 先看一段代码&#xff1a; public class ArrayMaker<T> {private Class&…

泛型

  • 泛型
    • 泛型数组与泛型容器
    • 如何解决擦除导致的类型丢失

泛型

我们接着上面一篇文章继续聊泛型,如果没有看过的,欢迎阅读thinking in java - 泛型1

泛型数组与泛型容器

先看一段代码:

public class ArrayMaker<T> {private Class<T> kind;public ArrayMaker(Class<T> kind) {this.kind = kind;}T[] creat(int size) {return (T[]) Array.newInstance(kind, size);}public static void main(String[] args) {ArrayMaker<String> arrayMaker = new ArrayMaker<>(String.class);String[] strings = arrayMaker.creat(10);System.out.println(Arrays.toString(strings));}
}

输出结果:

[null, null, null, null, null, null, null, null, null, null]

这段代码的点在于Array.newInstance(kind, size);为啥我们传入了Class类型,还有要创建的size,这个方法还是给我们返回了Object,还需要我们使用强制类型转换?

  1. 类型擦除的限制
    Java的泛型在编译后会被擦除为Object或边界类型(如Comparable)。虽然ArrayMaker的kind参数通过Class保留了类型信息,但Array.newInstance的返回类型设计为Object,因为它需要支持所有可能的componentType(如String.class、Integer.class等),无法在编译时静态绑定到具体类型。

  2. 数组的协变性
    Java数组是协变的(如String[]可视为Object[]),但泛型是不变的(如List不能视为List)。当通过反射创建数组时,返回的实际类型(如String[])在运行时是明确的,但编译器无法验证其与泛型类型T[]的兼容性,因此需要显式强制转换。

  3. 安全性责任转移给开发者
    Array.newInstance的设计要求开发者通过Class参数确保类型安全。例如,若传入String.class,则返回的数组实际类型是String[],但编译器无法自动推断这一点。开发者需通过强制转换(T[])告知编译器这一安全操作,并自行保证kind与T的一致性。

泛型容器

public class ListMaker<T> {List<T> create() {return new ArrayList<>();}public static void main(String[] args) {ListMaker<String> stringListMaker = new ListMaker<>();List<String> list = stringListMaker.create();}
}

如何解决擦除导致的类型丢失

其实泛型,本身就是为了,让我们的代码能够处理多个类,让代码更加具有泛化能力。既然是跨多个类,那么实际上,我们就无法得知,运行时具体传入的是哪种类型,类型在编译期间就被擦除掉了。

那么如何解决这个问题呢? 那就是再额外把类型的Class对象传入进来。

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

相关文章:

  • 巢湖网站开发个人免费域名注册网站
  • 网页界面设计中交互设计是指网站如何做优化排名
  • 凡科互动可信吗公司seo推广营销网站
  • 网站建设及维护招聘武汉网络营销公司排名
  • 尚义网站建设wl17581高端网站建设
  • 国内返利网站怎么做旺道seo网站优化大师
  • 做水浒传有关的网站百度指数排行榜
  • 东莞市网站建设分站公司太原网站制作优化seo
  • 广州一起做网站企业管理培训公司排行榜
  • 有关建筑网站建设方案案例深圳优化公司哪家好
  • 个人网站设计及实现论文seo臻系统
  • 茶文化网站建设规划书范文人民日报最新新闻
  • 政府门户网站保障建设要求代运营一家店铺多少钱
  • 网站建设需求公司内部调查网络推广网站
  • 做网站细节推广员是做什么的
  • 不同类型网站比较微商软文
  • php动态网站开发巨量算数
  • 环保网站设计规划书东营seo网站推广
  • 六安建设网站提高工作效率总结心得
  • 企业没有做网站有的坏处湖南正规seo公司
  • 如何建设一个自己的网站seo搜狗
  • 怎样创建行业门户网站郑州seo推广
  • 网站建设软件免费百度移动排名优化软件
  • 阿里云网站怎么做阿里妈妈苏州新闻今天最新消息新闻事件
  • wordpress浮动图上海网站seoseodian
  • 南京做网站咨询南京乐识济宁百度推广开户
  • 河源市做网站快速排名优化seo
  • 江西网站建设公司哪家好百度图像搜索
  • 网站建设原型图关键词排名网站
  • vi设计网站排行榜2345网止导航