Bu kodu vardır: Tarih Listesi arayüzünün uygulamıyor çünküJava Jenerik: Çoklu Sınırlar
public class Test {
public static void main(String[] args) {
Test t = new Test();
t.callTest();
}
public void callTest() {
GenericTest gt = new GenericTest<Date>(); // this line don't compile
gt.test(new Date());
}
class GenericTest<T extends Date & List> {
T x;
public void test(T y) {
System.out.println(x.toString());
}
}
}
new GenericTest<Date>()
derleme değil anlıyorum, öyle, ama genel, bütün olmadan GenericTest gt = new GenericTest()
örneğini ise Kod çalışır ve neden anlamıyorum. Yöntem sınaması,T extends Date
ve List
uygular, ancak gt.test(new Date())
ile çalışır.
Ham türleri kullandığınızda sınırlar gerçekten önemlidir mi? – CKing
Evet, önemliydi. Eğer sadece '(yani sınırsız tip parametresi) varsa, o zaman değiştirme 'Object' olacaktır, ancak eğer'
Haklısınız. İlk sınır uygulanır. Sadece denedim. +1 – CKing