SORU
10 Aralık 2010, Cuma


Nasıl Java Genel bir yöntem statik yapmak için?

Aşağıda bir dizinin tek bir öğe eklemek için java genel bir sınıf yapmak için nasıl anlamayabilirsiniz. Nasıl appendToArray statik bir yöntem yapabilirim. Bu yöntem statik imza ekleme derleme hataları olur.

public class ArrayUtils<E> {

        public E[] appendToArray(E[] array, E item) {
            E[] result = (E[])new Object[array.length 1];
            result[array.length] = item;
            return result;
        }
}

CEVAP
10 Aralık 2010, Cuma


yapabileceğiniz tek şey, imzanızı değiştirmek için

public static <E> E[] appendToArray(E[] array, E item)

Önemli ayrıntılar:

Dönüş değeri önceki genel ifadeler her zaman (ilan) yeni Genel tür değişken tanıtmak.

Ayrıca, türleri (**5) ve statik yöntemler arasında türü değişken (appendToArray) hiç birbiri ile çakışır.

Bu ne demek oluyor: Benim cevabım <E> yöntem static olmaz diye ArrayUtils<E> E saklasın. <E> ArrayUtils<E> E ile bir alakası yok.

Bu gerçeği daha iyi yansıtan, daha doğru bir cevap olurdu:

public static <I> I[] appendToArray(I[] array, I item)

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • eurotuner

    eurotuner

    6 Mart 2006
  • NPR

    NPR

    22 NİSAN 2006
  • Subscribe!!

    Subscribe!!

    3 EKİM 2009