SORU
9 Aralık 2008, Salı


Nasıl değişmez bir Sınıf oluşturabilirim?

Değişmez bir sınıf oluşturmaya çalışıyorum.< / ^ br . Salt okunur olarak tüm özelliklerini işaretledim.

Sınıf öğelerin bir listesi var.< / ^ br . Eğer özelliği ise salt okunur olsa da bu liste değiştirilebilir.

Listenin IEnumerable açıklamanızı değişmez hale getirir.< / ^ br . Birini takip etmek için bir sınıf değişmez yapması gereken temel kuralların ne olduğunu bilmek istedim ?

Teşekkürler.

CEVAP
9 Aralık 2008, Salı


Doğru yoldasın bence

  • tüm bilgiler sınıf enjekte kurucu sağlanmalıdır
  • tüm özellikleri alıcılar sadece olmalıdır
  • eğer bir koleksiyon (ya da Dizi) kurucu geçirilir, daha sonra değiştirme arayan tutmak için kopyalanmalıdır
  • toplama dönmek, ya da bir kopya ya da salt okunur bir sürümünü geri dönmek için gidiyoruz (örneğin, ArrayList.ReadOnly ya da bir önceki nokta ile bu birleştirebilirsiniz . benzer kullanıyorsanız ^em>mağazasalt okunur arayanlar erişim) ne zaman iade edilecek kopya, bir kaptan geri dönmek, ya da başka bir yöntemi kullanmak salt okunur koleksiyona erişim sağlayan/özellik
  • unutmayın, hala olabilir görünümünü bir değişken sınıf eğer herhangi bir üye değişken - eğer bu durumda, gerekir kopyasını uzak olursa olsun devlet etmek isteyeceksiniz korumak ve önlemek dönen tüm değişken nesneler, sürece kopyalama onlardan önce onlara geri vermek için arayan başka bir seçenektir dönmek yalnızca değişmez "bölüm" değişken object - teşekkürler @Brian Rasmussen için teşvik benim için genişletin bu noktada

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 30GB

    30GB

    14 AĞUSTOS 2006
  • Caina Mondo Zine

    Caina Mondo

    13 EKİM 2007
  • Munchkin the Teddy Bear

    Munchkin the

    30 EYLÜL 2011