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

  • Ammine Getahun

    Ammine Getah

    21 HAZİRAN 2011
  • Flash CS6 Video Tutorials for Beginners (Actionscript 3 Gaming)

    Flash CS6 Vi

    14 EYLÜL 2012
  • Need for Speed

    Need for Spe

    8 ŞUBAT 2006