2015-06-02 23 views
5

Benim bir arayüzüm var; Ve ben bunu uyguluyorum. Ben ise fonksiyon initalize üzerinde uyarı alıyorumjava joker karakter güvenlik uyarısı

public class Startup_thePanel extends JPanel implements abc { 
    public Startup_thePanel initalize() { 

      return this; 
    } 
} 

: İşte böyle işlevini tanımlarken, şeydir 'Tip güvenliği: tip ifadesi ... uymak için kontrolsüz dönüşüm ihtiyacı ...'.

Bunu bastırma yazılımı kullanarak kurtarabilirim ama kullanmak istemiyorum. Neyi kaçırıyorum ? Bu derleyici senin uyguladıklarını arayüzün hangi tip bilmek yapacak

+1

Eğer bütün uyarı eklemenizi rica ediyorum deneyin? Bu arada, '@ Override' ile uyguladığınız' initialize' yöntemini uygulamanız gerekir. – Tom

+0

evet haklısın, bilgi için teşekkürler, ama aşağıda doğru cevabı aldım. –

cevap

6
public interface abc<T extends JPanel> { 
    public T initalize(); 
} 

public class Startup_thePanel extends JPanel implements abc<Startup_thePanel> { 
    public Startup_thePanel initalize() { 

      return this; 
    } 
} 

önceden

teşekkürler ....

+0

İlginiz için teşekkürler, bu sorunu çözdü. –

4

bu

public interface abc<T extends JPanel> { 
    public T initalize(); 
} 


public class Startup_thePanel extends JPanel implements abc<Startup_thePanel> { 

    private static final long serialVersionUID = 1L; 

    @Override 
    public Startup_thePanel initalize() { 

      return this; 
    } 
} 
+1

"T" jenerik türünün üst sınırını kaldırmazdım. – Tom

+1

Tamam o zaman benim cevabımı güncelledim :) –

+0

bu da doğru, teşekkürler ... –

İlgili konular