当前位置: 代码迷 >> J2SE >> 关于java的泛型编程!该如何解决
  详细解决方案

关于java的泛型编程!该如何解决

热度:58   发布时间:2016-04-24 13:19:46.0
关于java的泛型编程!
一般情况
Java code
public class Test{Public Class getMyClass(){        return Test.class;}}

泛型情况
Java code
public class Test<E extends Enum<E>>{Public Class getEClass(){        return E.class;//这里怎么处理能返回E的class}}


------解决方案--------------------
Java code
public class Test<E extends Enum<E>> {    private Class<? extends Enum<E>> t_ = null;    public Test(Class<? extends Enum<E>> t) {        this.t_ = t;    }    public Class getEClass() {        return t_;//这里怎么处理能返回E的class    }}
------解决方案--------------------
因为所有类都有相应的Class对象,所以一定可以返回Class对象
------解决方案--------------------
听高手详解!!!
------解决方案--------------------
据说是Java中伪泛型的缺陷,最接近的可能也就是1楼的方法了,必须手动同步传一个Class对象。
最近我也试着解决这个问题甚至想重写整个Java Collection Framework (*^__^*),有些小的“成果”,可惜越往深处,问题越多,暂时搁浅……
------解决方案--------------------
java泛型采用擦除,在内部程序不知道具体类型。。。。thinking in java说
  相关解决方案