java泛型中类型擦除的转换示例

  介绍

这篇文章给大家分享的是有关java泛型中类型擦除的转换示例的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

java基本数据类型有哪些

java的基本数据类型分为:1,整数类型,用来表示整数的数据类型。2,浮点类型,用来表示小数的数据类型。3,字符类型,字符类型的关键字是“字符”。4,布尔类型,是表示逻辑值的基本数据类型。

<强> 1,说明

泛型值存在于编译阶段,当代码进入虚拟机时,泛型值将被删除。这个特征被称为类型删除。当泛型被删除时,他有两种转换方法第。一种是,如果泛型没有设置类型上限,泛型将转换为对象类型,第二种是如果设置了类型上限,泛型将转换为其类型上限。

<强> 2,实例

//未指定上限
  public  class  Test1, {
  ,,,T  t;
  ,,,public  T  getT (), {
  ,,,,,,,return  t;
  ,,,}
  ,,,public  void 洞穴(T  t), {
  ,,,,,,,this.t =, t;
  ,,,}
  }//通过反射调用获取他们的属性类型
  @Test
  public  void  testType1 (), {
  ,,,Test1, test1 =, new  Test1<在();
  ,,,test1.setVale (“11111”);
  ,,,Class<?, extends  Test1>, aClass =, test1.getClass ();
  ,,,for  (Field  Field : aClass.getDeclaredFields ()), {
  ,,,,,,,System.out.println (“Test1属性:“,+,field.getName(), +,“的类型为:“,+,field.getType () . getname ());
  ,,,}
  ,
  ,,,Test2  Test2 =, new  Test2 ();
  ,,,test2.setT (“2222”);
  ,,,Class<?, extends  Test2>, aClass2 =, test2.getClass ();
  ,,,for  (Field  Field : aClass2.getDeclaredFields ()), {
  ,,,,,,,System.out.println (“test2属性:“,+,field.getName(), +,“的类型为:“,+,field.getType () . getname ());
  ,,,}
  }

感谢各位的阅读!关于“java泛型中类型擦除的转换示例”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

java泛型中类型擦除的转换示例