SORU
6 Kasım 2008, PERŞEMBE


Neden bir sınıf seal?

İçinde mühürlenmiş sınıflar toplu arkasındaki motivasyon ne olduğunu duymak isterim .Net çerçeve. Sınıf sızdırmazlık faydası nedir? Miras değil izin vermek yararlı olabilir nasıl anlayamaz ve büyük olasılıkla sadece bu sınıflar mücadele değil.

Neden çerçeve bu şekilde dizayn ettim ve onu değiştirmek için her şeyi ortaya çıkarmak için unbreaking olmaz mı? Ama sadece kötü olmasının başka bir nedeni olmalı?

CEVAP
6 Kasım 2008, PERŞEMBE


Sınıfları da miras için tasarlanmış ya da yasaklamak gerekir. Miras için tasarım yapmanın bir bedeli vardır:

  • Uygulamanız (kullanıcı geçersiz kılar diye diğer yöntemler, ama başka arayacak olan ilan varsa) pin
  • Sadece etkileri yerine uygulamaya koyuyor
  • Tasarlarken daha fazla olasılık düşünmek zorunda anlamına gelir
  • Eşit gibi şeyler miras bir ağacı tasarım zor durumda
  • Daha fazla bilgi gerektirir
  • Alt sınıfı olan değişmez bir tür değişken (ick) olabilir

Java Etkin Madde 17 bu konuda daha fazla detaya gider - Java bağlamında yazılmış olması ne olursa olsun, tavsiye için geçerlidir .NET.

Şahsen sınıflar varsayılan olarak kapalı olmasını isterdim .NET.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • dhcrr's channel

    dhcrr's chan

    2 Ocak 2007
  • ipsy

    ipsy

    1 EKİM 2012
  • Rachel Raum

    Rachel Raum

    10 EYLÜL 2007