加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 获取带有泛型信息的类名

发布时间:2020-12-15 05:04:34 所属栏目:Java 来源:网络整理
导读:在 java序列化问题中,我想保存一些类名,我对泛型类有一些问题. 例如 : – 如果我有ArrayList String listToDump = new ArrayList String(); – 如果我取名:listToDump.getName();或listToDump.getCanonicalName(); – 我将有java.util.ArrayList或ArrayLis
在 java序列化问题中,我想保存一些类名,我对泛型类有一些问题.
例如 :
– 如果我有ArrayList< String> listToDump = new ArrayList< String>();
– 如果我取名:listToDump.getName();或listToDump.getCanonicalName();
– 我将有java.util.ArrayList或ArrayList
– 我想要java.util.ArrayList< String>或ArrayList< String>

有关如何做到这一点的任何想法?
达米安.

解决方法

>你描述的情况不起作用,你可能做listToDump.getClass().getName()
>由于 type erasure,无法在运行时获取有关泛型类型的信息:

When a generic type is instantiated,
the compiler translates those types by
a technique called type erasure — a
process where the compiler removes all
information related to type parameters
and type arguments within a class or
method.

>如果您详细描述了您要解决的问题,那么我们可能会建议您使用一些解决方法甚至是解决方案.类型擦除不应该??是一个大问题,它只是可以改变做某事的方式.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读