C# erişim belirteçleri nedir nelerdir?Öncelikle erişim belirleyicilerin (access modifiers) nerelere uygulandığını bilmemiz lazım; C#
projesinde tanımlanmış tüm varlıklara uygulanabilir, buna class, struct, function, method, property
ve class seviyesindeki tüm değişkenler dahildir.
Peki, neden erişim belirleyicilere ihtiyaç duyarız?
Çünkü uygulamamızda kullandığımız varlıkların bulundukları kod bloğunun dışından
erişilip/erişilemeyeceğini belirlemek isteriz. C# erişim belirteçleri nedir nelerdir? bir bakalım.
C# dilinde tanımlı erişim belirleyiciler;
PUBLIC
Public olarak tanımlanan öğe, kod bloğunun içinde ve dışınd a tamamen erişilebilirdir. Yani, hiçbir
kısıtlama yoktur.
PROTECTED
Protected olarak tanımlanan öğe, sadece tanımlan dığı class’ın içinde ve o class’tan türetilmiş diğer
class’ların içinde erişilebilir.
INTERNAL
Internal olarak tanımlanan öğe, bulunduğu assembly ’nin (Dll veya Exe dosyası) içinde erişilebilir.
Dll veya Exe dosyasının içerisinde erişim için kısıtlama yoktur, ama dışarıdan erişilemez.
PROTECTED INTERNAL
Protected internal erişim belirleyicisi, protected ve internal erişim belirleyicilerinin VEYA ( OR)
işlemiyle birleştirilmiş halidir. Veya bağlacının programlamada yaptığı işi bilen arkadaşlar
anladılar lakin yeni başlayan arkadaşlar için tanımımıza devam edelim. Protected internal olarak
tanımlanmış öğe, tanımlandığı class ’ın içinde ve o class’tan türetilmiş diğer class ’ların içinde
erişilebilir. Ayrıca, aynı assembly içinde olmasa dahi, tanımlandığı class ’tan türetilmiş diğer
class’ların içinde de erişilebilir.
PRI ATE
Private olarak tanımlanan öğe, sadece tanımlandığı class ’ın içerisinden erişilebilir. En katı erişim
belirleyicidir