Ana Sayfa Microsoft .NETC# C# Erişim Belirleyiciler (Access Modifiers)

C# Erişim Belirleyiciler (Access Modifiers)

by Sinan BOZKUŞ
11.675 kez okundu

Güvenlik vb. çeşitli sebeplerle nesnelerimizin dışarıdan erişilmesini veya erişilmemesini isteyebiliriz. Bu tarz yetkilendirme işlemlerini C# dilinde erişim belirleyiciler (access modifiers) ile sağlanmaktadır. Erişim belirleyiciler C# üzerinde tanımlanmış tüm nesnelere uyarlanabilir. (değişkenler, classlar, methodlar vb.)

Private
Bir nesne private olarak tanımlandığında sadece kendi kod bloğu içerisinden çağrılabilir. Güvenlik nedeniyle dışarıya kesinlikle açmamamız gereken nesnelerde kullanılır.

[divider type=”dashed”]

Public
Bir nesne public olarak tanımlandığında hiç bir kısıtlaması olmaz. Yani hem kendi kod bloğu üzerinden hem de dışarıdan hatta farklı projeler üzerinden dahi çağırılabilir.

[divider type=”dashed”]

Internal
Kendi projesi içerisinde public, farklı bir projeden/dışarıdan çağırılmak istenildiğinde ise private özelliklerini taşır. Yani aynı Assembly (dll) üzerinde istediğiniz şekilde kullanabilirsiniz ancak dışarıdan (farklı bir projeden) çağıramazsınız.

[divider type=”dashed”]

Protected
Bir nesne protected olarak tanımlandığında yalnızca bulunduğu class üzerinde ve bu class ı miras alan (bu class’tan türetilmiş) classlar üzerinden çağırılabilir.

[divider type=”dashed”]

Proteced Internal
Bir nesne protected internal olarak tanımlandığında aynı protected gibi kendi bulunduğu class üzerinde ve bu class ı miras alan classlar üzerinden çağrılabilir. Artı olarak aynı proje (assembly/dll) üzerinde olmasalar dahi, tanımlandığı class’tan türetilmiş diğer class’ların içinden de çağırılabilirler.
Özel bir durum olmadıkça varsayılan olarak değişkenler ve methodlar private, classlar ise internal dır.

Bunlara da bakmak isteyebilirsiniz

3 yorum

muhammed 23 Şubat 2019 - 09:21

Proteced Internal tanımlamasında “miras” yazılacağına “misas” yazmışsınız bilginize

Yanıtla
Sinan BOZKUŞ 24 Şubat 2019 - 15:44

Düzenledim, teşekkürler.

Yanıtla
Şinasi 18 Mart 2022 - 15:30

Çok değerli bir çalışma olmuş.

Yanıtla

Bir Yorum Bırakın