base: Türetilmiş sınıflarda ana sınıfın halka açık veya korunan üyelerine erişim sağlamak için kullanılır, ancak yalnızca yapıcılarda, örnek metotlarında ve örnek özellik erişimcilerinde. MSDN'deki özetin özel özellikleri şunlardır: (1) Temel sınıfta diğer metodlar tarafından üzerine yazılmış bir metodu çağırın. (2) Türetilmiş sınıf örneği oluşturulurken çağrılması gereken temel sınıf oluşturucuyu belirtin. Base, türetilen sınıf nesnesi başlatıldığında temel sınıfla iletişim kurmak için yaygın olarak kullanılır. Üs, temel sınıfın halka açık ve korunan üyelerine erişebilir ve özel üyeler erişilebilir değildir. Çok katmanlı kalıtımda, tabanın ana sınıfa işaret edebileceği iki durum vardır: birincisi, aşırı yük olduğunda, taban doğrudan miras alan ana sınıf üyesinin metoduna işaret eder; Aşırı yük yoksa, base herhangi bir ebeveyn ebeveynin kamuya açık veya korunan bir yöntemine işaret edebilir.
this: Sınıfa referans vermek için kullanılan mevcut örnek, aynı zamanda kalıtsal metotlar genellikle bunu gizleyebilir. MSDN'deki özet özellikler başlıca şunları içerir:
(1) Benzer isimlerle gizlenen üyeleri sınırlama (2) Nesneyi parametre olarak diğer yöntemlere aktarmak (3) Bildiri indeksleyicisi Bu, sınıf nesnesinin kendisine atıfta bulunur; bu nesne, erişim öğesinin erişim seviyesi ne olursa olsun sınıfın tüm sabitlerine, alanlarına, özelliklerine ve metod üyelerine erişmek için kullanılır. Bu sadece nesnenin içinde sınırlı olduğu ve nesnenin dışında görünemediği için, temel fikir budur. Ayrıca, statik üyeler nesnenin bir parçası değildir, bu yüzden statik yöntemlerde bu referans alınamaz.
Genel kurallar:
1. Taban ve bunu mümkün olduğunca az kullanın. Alt sınıf isim çatışmalarından kaçınmanın yanı sıra bir yapıcının diğer yapıcılarını çağırmasının yanı sıra, base kullanımı istenmeyen sonuçlara yol açabilir. 2. Statik üyelerde taban ve bunun kullanılmasına izin verilmez. Bunun nedeni, base ve this'in her iki sınıf örneğine, yani nesnelere erişmesi, statik üyelere ise yalnızca sınıflar tarafından erişilebilmesidir, nesneler tarafından erişilmez. 3. Taban, polimorfizm elde etmek için tasarlanmıştır. 4. Bu veya temel anahtar kelimeleri yalnızca bir yapıcı belirtmek için kullanın; bu da bu ve tabanın aynı anda bir yapıcı için uygulanamayacağı anlamına gelir. 5. Basitçe söylemek gerekirse, taban, türetilmiş sınıfta yeniden yazılmış temel sınıf üyelerine erişmek için kullanılır; Bu, elbette bu kategorideki üyelere, miras alınan kamu mülkiyeti ve korunan üyeler dahil olmak üzere erişim için kullanılır. 6. Temel sınıfa ek olarak, temel sınıf üyelerine erişmenin bir diğer yolu da gösterilen tipi dönüştürmektir. Sadece yöntem statik bir yöntem olamaz. |