如何在java中使用参数化?

时间:2013-03-21 03:56:18

标签: java

我有这个使用<T>

的java代码
public static class mySet<T> extends Set {

    // Define a list object using parametric polymorphism
    public final List<T> set;

    // Define the constructor for a Set data type
    public <T> mySet(List<T> given_set) {
        this.set = (List<T>) given_set;
    }
}

但是我在这里收到错误(List<T>) given_set;。 它应该工作,因为我使它与最终变量集类型相同,但它没有。

有谁知道为什么?

Eclipse说:Type mismatch: cannot convert from java.util.List<T> to java.util.List<T>

1 个答案:

答案 0 :(得分:6)

你没有把它变成同一类型。通过在构造函数声明前使用<T>,您将引入一个 new T,与类T没有类型关系。去掉它。然后你也可以删除演员阵容,它什么都不做。