Program Örnekleriyle C#'ta Erişim Değiştiricileri (Belirleyiciler)
⚡ Akıllı Özet
C#'da erişim değiştiriciler, bir sınıfın, özelliğin veya metodun görünürlüğünü ayarlayan ve hangi harici programların bunlara erişebileceğini kısıtlayan anahtar kelimelerdir. Yapıcılar, sınıfın bir nesnesi oluşturulduğunda alan değerlerini otomatik olarak başlatır.

C#'ta Erişim Değiştirici (Belirleyici) nedir?
Erişim Değiştiricileri C#'da erişim belirleyiciler, bir sınıf özelliğinin veya yönteminin görünürlüğünü tanımlamak için kullanılan anahtar kelimelerdir. Diğer programların bir sınıfın özelliklerini veya yöntemlerini görmesini istemediğinizde kullanılır. Erişim belirleyiciler, diğer programların bir sınıfın özelliklerini veya yöntemlerini görememesi için erişimi kısıtlar.
C#'ta 6 tür erişim değiştirici vardır:
- Özel Etkinlik
- Açık Alan
- korumalı
- İç
- Korumalı Dahili
- Özel Korumalı
C#'taki ana erişim değiştiricileri aşağıda açıklandığı gibi program örnekleriyle öğreneceğiz.
C#'ta Özel Erişim Değiştiriciler
Özel erişim değiştiricinin bir özelliğe veya yönteme eklenmesi, bu üyelere herhangi bir harici programdan erişilemeyeceği anlamına gelir.
Özel Erişim Değiştirici Örneği
Bir örnek alalım ve özel erişim değiştiriciyi kullandığımızda ne olacağını görelim.
Tutorial.cs dosyamızdaki mevcut kodu değiştirelim. SetTutorial metodunda public anahtar sözcüğünü özel olarak değiştirelim.
Şimdi Program.cs dosyamıza geçelim. SetTutorial metodunun altında kırmızı dalgalı bir çizgi olduğunu fark edeceksiniz.
Tutorial sınıfımızda SetTutorial metodunu private olarak bildirdiğimizden beri, Visual Studio bunu tespit etti. Kullanıcıya, Program.cs dosyasından artık bu metodun çalışmayacağını vurgulayarak bildirdi.
C# Genel Erişim Değiştiricileri
Genel erişim değiştiricisi bir özelliğe veya yönteme eklendiğinde bu, bu üyelere herhangi bir harici programdan erişilebileceği anlamına gelir. Bunu daha önceki örneklerimizde de görmüştük.
Genel Erişim Değiştirici Örneği
Tutorial sınıfında metodlarımızı public olarak tanımladığımız için Program.cs dosyasından ulaşılabilir.
C#'ta Korumalı Erişim Değiştiricileri
Korumalı erişim değiştirici bir özelliğe veya yönteme eklendiğinde bu, bu üyelere yalnızca miras alınan sınıflar akımdan sınıf. Bu, Kalıtım sınıfında daha ayrıntılı olarak açıklanacaktır.
C# Dahili Erişim Değiştiricileri
Bir özelliğe veya yönteme Dahili erişim değiştirici eklendiğinde, bu üyelere yalnızca dahili bir program tarafından erişilebilir, ancak harici bir program tarafından erişilemez.
C# Oluşturucusu
C# Yapıcılar, karşılık gelen nesneler oluşturulduğunda sınıf alanlarının değerlerini başlatmak için kullanılır. Yapıcı, sınıfınkiyle aynı adı taşıyan bir yöntemdir. Bir sınıfta bir kurucu tanımlanmışsa, o zaman bir nesne yaratıldığında çağrılan ilk yöntemi sağlayacaktır. Çalışan adında bir sınıfımız olduğunu varsayalım. Yapıcı yöntemi aynı zamanda Employee() olarak da adlandırılır.
Oluşturucu yöntemleri hakkında dikkat edilmesi gereken önemli noktalar şunlardır:
- Yapıcı için C# varsayılan erişim değiştiricisinin genel olarak yapılması gerekir.
- Yapıcı yöntemi için dönüş türü olmamalıdır.
C# Oluşturucu Örneği
Şimdi yapıcıların kullanıcısını kodumuza nasıl dahil edebileceğimizi görelim. Nesne oluşturulduğunda TutorialID ve TutorialName alanlarını bazı varsayılan değerlere başlatmak için yapıcıları kullanacağız.
) 1 Adım İlk adım, Öğretici sınıfımızın yapıcısını oluşturmaktır. Bu adımda Tutorial.cs dosyasına aşağıdaki kodu ekliyoruz.
Code Açıklama:-
- Öncelikle sınıfla aynı adı taşıyan yeni bir yöntem ekliyoruz. Sınıfla aynı isim olduğundan, C# bunu bir yapıcı yöntemi olarak ele alır. Artık çağıran yöntem bu sınıftan bir nesne oluşturduğunda, bu yöntem varsayılan olarak çağrılacaktır.
- Tutorial yapıcısında TutorialID değerini 0 ve TutorialName değerini “Default” olarak ayarlıyoruz. Yani ne zaman bir nesne yaratılsa bu alanlar her zaman bu varsayılan değerlere sahip olacaktır.
Şimdi Program.cs dosyamıza geçiş yapalım ve SetTutorial metodunu çağıran satırı kaldıralım. Bunun nedeni yapıcının nasıl çalıştığını görmek istememizdir.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Tutorial { public int TutorialID; public string TutorialName; public Tutorial() { TutorialID=0; TutorialName="Default"; } public void SetTutorial(int pID,string pName) { TutorialID=pID; TutorialName=pName; } public String GetTutorial() { return TutorialName; } static void Main(string[] args) { Tutorial pTutor=new Tutorial(); Console.WriteLine(pTutor.GetTutorial()); Console.ReadKey(); } } }
Code Açıklama:-
- İlk adım, Tutorial sınıfı için bir nesne oluşturmaktır. Bu 'yeni' anahtar kelime aracılığıyla yapılır.
- TutorialName’i almak için Tutorial sınıfının GetTutorial metodunu kullanıyoruz. Bu daha sonra Console.WriteLine yöntemi aracılığıyla konsola görüntülenir.
Yukarıdaki kod düzgün bir şekilde girilip program çalıştırıldığında aşağıdaki çıktı görüntülenecektir.
Çıktı:
Çıktıdan yapıcının gerçekten çağrıldığını ve TutorialName değerinin “Default” olarak ayarlandığını görebiliriz.
Not: Burada “varsayılan” değeri yapıcıdan alınır.






