Gölgeleme ve Geçersiz Kılma Arasındaki Farklar (Visual Basic)

Temel sınıfından devralan bir sınıf tanımladığınızda, bazen bir veya daha fazlasını türetilen sınıfta temel sınıf öğeleri tanımlamak istediğiniz.Gölgeleme ve geçersiz kılma ikisi de bu amaçla'dır.

Karşılaştırma

Gölgeleme ve geçersiz kılma hem türetilmiş bir sınıf bir temel sınıftan kalıtımla alan ve her ikisi de bir başka bir bildirilen öðeyi tanımlayın, kullanılır.Ancak ikisi arasında önemli farklar vardır.

Aşağıdaki tabloda, geçersiz kılma ile gölgeleme karşılaştırır.

Karşılaştırma noktası

Gölgeleme

Geçersiz kılma

Purpose

Türetilmiş bir sınıf içerisinde daha önceden tanımlamış olduğunuz bir üyesini tanıtır izleyen bir temel sınıf değişikliği karşı korur

Çok biçimlilik, yordam veya özellik aynı arama sırası ile farklı bir uygulamasını tanımlayarak erişir1

Yeniden tanımlanan öğe

Herhangi bir öğe türü olarak bildirilen

Yalnızca bir yordam (Function, Sub, veya Operator) veya özellik

Öğeyi yeniden tanımlama

Herhangi bir öğe türü olarak bildirilen

Yalnızca bir yordam veya özelliği özdeş arama sırası ile1

Erişim düzeyi öğesi yeniden tanımlama

Herhangi bir erişim düzeyi

Geçersiz kılınmış öğesinin erişim düzeyini değiştiremezsiniz

Okunabilirlik ve öğesi tanımlayarak, writability

Herhangi bir birleşimi

Okunabilirlik veya geçersiz kılınmış özellik writability değiştiremezsiniz

Yeniden tanımlama üzerinden kontrol

Temel sınıf öğesi zorlamanıza veya gölgeleme yasakla

Temel sınıf öğesi belirtebilirsiniz MustOverride, NotOverridable, veyaOverridable

Anahtar sözcük kullanımı

Shadowstüretilmiş bir sınıf içerisinde önerilir; Shadowsikisi de kabul Shadows ne de Overrides belirtilen2

Overridableveya MustOverride taban sınıfta gerekli Overridestüretilmiş bir sınıf içerisinde gerekli

Öğe, türetilmiş sınıftan türeyen sınıflar tarafından yeniden tanımlama, devralma

Öğe gölgeleme devralınan sınıfları;'daha ileri türetilmiş Gölgeli öğe hala gizli3

Öğe geçersiz kılma devralınan sınıfları;'daha ileri türetilmiş geçersiz kılınmış öğe hala geçersiz kılındı

1Arama sırası öğesi türünü içerir (Function, Sub, Operator, veya Property), adı, parametre listesi ve dönüş türü.Bir özellik veya başka bir şekilde geçici bir yordam kılamaz.Yordam, bir çeşit kılamaz (Function, Sub, veya Operator) ile başka bir tür.

2 Ya da belirtmezseniz, Shadows veya Overrides, derleyici kullanmak istediğiniz şemadaki hangi tür emin olmanıza yardımcı olmak için bir uyarı iletisi verir.Uyarıyı göz ardı ederseniz, gölgeleme mekanizması kullanılır.

3 Gölgeleme öğe daha ileri türetilmiş bir sınıfta erişilemiyorsa, gölgeleme değil devralınır.Örneğin, gölgeleme öğesi olarak bildirmek Private, özgün öğe gölgeleme öğe yerine, türetilmiş sınıftan türetilen bir sınıfı devralır.

Yönergeleri

Normal olarak, aşağıdaki durumlarda geçersiz kılma kullanın:

  • Polimorfik türetilmiş sınıfları tanımlıyorsanız.

  • Aynı öğe türü ve arama sırası zorla derleyici kalmadan emniyet istediğiniz.

Normalde, gölgeleme aşağıdaki durumlarda kullanın:

  • Sınıfınızın temel değişiklik olabilir ve sizin gibi aynı adı kullanarak bir öðeyi tanýmlamak beklenir.

  • İstediğiniz öğe türünü değiştirme veya arama sırası özgürlüğü.

Ayrıca bkz.

Görevler

Nasıl yapılır: Değişkeninizle Aynı Adı Taşıyan Bir Değişkeni Gizleme (Visual Basic)

Nasıl yapılır: Devralınmış Değişkeni Gizleme (Visual Basic)

Nasıl yapılır: Türetilmiş Sınıf Tarafından Gizlenen Bir Değişkene Erişme (Visual Basic)

Başvuru

Shadows (Visual Basic)

Geçersiz Kılmalar (Visual Basic)

Kavramlar

Bildirilmiş Öğelere Başvurular (Visual Basic)

Visual Basic'de Gölgeleme