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

  • Amena

    Amena

    15 Kasım 2006
  • KliptOut KwazeeKilla

    KliptOut Kwa

    24 ŞUBAT 2010
  • MarinaHD2001

    MarinaHD2001

    7 ŞUBAT 2009