C# Sınıflarda Erişilebilirlik

Bir sınıf içindeki üyelere dışarıdan erişim sağlamak veya sınırlandırmak için erişim

türleri belirlenmiştir. Nesne tabanlı programlama da beş tane erişim türü bulunmaktadır.

  •  public
  •  private
  •  protected
  •  internal
  •  protected internal

public: Bu erişim türü ile tanımlanmış sınıf üyelerine her yerden erişim izni verilmiş

olur.

private: Bu erişim türünde tanımlanmış üyelere sadece aynı sınıf içerisinde

tanımlanmış diğer üyeler tarafından erişim izni verilmiş olur.9

protected: Bu erişim türünde tanımlanmış üyelere tanımlandık sınıf ve bu sınıftan

türetilmiş diğer sınıflardan erişim izni verilmiş olur.

İnternal: Bu erişim türünde tanımlanmış üyelere aynı assembly içinden erişim izni

verilmiş olur.

protected internal: Bu erişim türü protected ve internal erişim türlerinin veya

işlemiyle birleştirilmiş halidir.

class veya struct?lar public ya da internal olabilir, varsayılan olarak internal erişim

türüne sahiptir.

Erişim türü belirlenmediği sınıf üyeleri varsayılan olarak private olarak kabul edilir.

Yukarıdaki bisiklet örneğini ele alınsın. Bir tane bisiklet adında sınıf tanımlanmıştır.

Bu sınıfın içinde integer tipinde hız ve vites adında iki tane de değişken tanımlanmıştır.

Dikkat edersen bu değişkenlere erişim türü atanmamıştır. Dolayısıyla program tarafından

varsayılan olarak private olarak tanınacaklardır. Private olarak tanındıkları için sadece

bisiklet sınıfı içinden erişim sağlanacaktır. Programın ana blokunda bisiklet sınıfından

türetilen nesneler tarafından erişilemeyecektir.

bisiklet1.vites = 2; // Hata verir (vites için sınıf içerisinde bir erişim belirleyici

kullanılmadığı için private kabul edilecektir)

Fakat bisiklet sınıfının içinde tanımlanmış Hizlan metodu public olarak tanımlandığı

için her yerden erişim imkânı vardır. Dolayısıyla programın ana blokunda tanımlanmış

nesneler tarafından da erişilebilecektir.

bisiklet1.Hizlan(10); // Hata vermeyecektir.

Bana Ders Anlat © 2008-2022