Tesadüfen
elime geçen ve bir öğretim üyesi tarafından hazırlanan PDF’de Array sınıfı
tipindeki nesnelerden statik dizi diye söz edildiğini görünce bu kısa
metni yazmak gerekti.
Hoca
arkadaşın demek istediği, klasik şekilde tanımlanan dizi değişkenlerin eleman
sayısının sonradan değiştirilemediğidir. Tabi bunu derken, nesneye yönelik
programlama dillerinin anlamı yıllardır “sabit” olan statik kavramını
kullanıyor.
Madem
konu açıldı biraz konuşalım: İster C#, ister Visual Basic isterse de Java dili
kullanılsın, ArrayList gibi nesne hazırlandığında, nesne dahilinde eleman
sayısı önceden belli olan yani “statik” bir dizi değişken hazırlanır. Bu
ArrayList nesnesine kullanıcı tarafından fazla sayıda eleman eklenip başta
belirtilen sayı aşıldığında geri planda yeni bir dizi değişken tanımlanır ve
artık kapasitesi yeterli gelmeyen eski dizi değişkenin mevcut elemanları yeni
dizi değişkene aktarılır. Bu işlem geri planda otomatik olarak yapıldığı için
fazla meraklı olmayan programcılar ArrayList için dinamik dizi diyebilirler.
Yukarıda
adlarını andığımız programlama dillerinde ArrayList sınıfı olmasaydı programcılar
için gerektiğinde kapasitesi iki katına çıkarılan yeni bir dizi değişkeni
tanımlayıp eski dizi değişkenin elemanlarını yenisine kopyalaması zor değildir.
Tabi hazırda ArrayList veya List sınıfları dururken hiçbir programcı kendini
yorup boş yere kendi koleksiyon sınıfını hazırlamaz.
Hiç yorum yok:
Yorum Gönder