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

  • Julian Smith

    Julian Smith

    31 EKİM 2006
  • Louis C.K.

    Louis C.K.

    18 HAZİRAN 2006
  • Photoshop Training Channel

    Photoshop Tr

    13 Temmuz 2012