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

  • jkimisyellow...ish

    jkimisyellow

    8 Temmuz 2009
  • MatheusDosGames

    MatheusDosGa

    28 Aralık 2011
  • TechRax

    TechRax

    21 EYLÜL 2009