Ошибка компиляции дженериков Java

У меня есть следующий общий класс:

public class GenericClass<E,T extends Comparable<T>>
{
    public static <E, T extends Comparable<T>> GenericClass<E, T> create()
    {
        return new GenericClass<E, T>();
    }

    private GenericClass()
    {
    }
}

И вот как я его просто использую:

GenericClass<MyClass, Double> set = GenericClass.create();

Компиляция Eclipse не показывает ошибок, однако сборка с помощью ant дает следующую ошибку:

MyClass.java:19: incompatible types; no instance(s) of type variable(s) E,T exist so that GenericClass<E,T> conforms to GenericClass<MyClass,java.lang.Double>
[javac] found   : <E,T>GenericClass<E,T>
[javac] required: GenericClass<MyClass,java.lang.Double>
[javac]             GenericClass<MyClass, Double> set = GenericClass.create();

Спасибо!

10
задан Joachim Sauer 4 February 2011 в 09:14
поделиться