SORU
28 AĞUSTOS 2010, CUMARTESİ


Java Soyut Jenerik ile Arayüzü Uygulayan Sınıf

Soyut bir sınıf Benzer uygulama tanımlamak için çalışıyorum. Ben tanımı şu: sınıf tanımlayın

public abstract class MyClass implements Comparable <MyClass>

alt sınıflar compareTo(MyClass object) uygulamak zorunda. Bunun yerine, her alt compareTo(SubClass object), kendi türünde bir nesne kabul uygulamak istiyorum. Tanımlamaya çalıştığımda bir şey ile soyut sınıf gibi:

public abstract class MyClass implements Comparable <? extends MyClass>

"Bir supertype herhangi bir joker yazamazlar." diye yakınıyor

Bir çözüm var mı?

CEVAP
29 AĞUSTOS 2010, Pazar


Biraz bence fazla ayrıntılı değil, ama çalışır:

public abstract class MyClass<T extends MyClass<T>> implements Comparable<T> {

}

public class SubClass extends MyClass<SubClass> {

    @Override
    public int compareTo(SubClass o) {
        // TODO Auto-generated method stub
        return 0;
    }

}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • FrameCityJackal

    FrameCityJac

    4 Aralık 2010
  • hydejiaqi

    hydejiaqi

    12 Mart 2008
  • Jana Williams

    Jana William

    17 AĞUSTOS 2011