CodeBlanks Logo Icon CodeBlanks

Özellikler

C# kursu · Orta seviye · Ders 25/116

Property get/set erişimcileriyle kontrollü erişim öğrenirsin.

Özellikler (properties)

Bir özellik (property), dışarıdan alan gibi görünür ama içeride metot gibi çalışır. get okuma, set yazma erişimcisidir. Özellikler, private alanı kontrollü biçimde dışarı açar.

Örnek: public double Celsius { get { return celsius; } set { celsius = value; } }. Burada value özel bir değişkendir; atanan değeri taşır. set içinde doğrulama yapabilirsin: örneğin sıcaklığı mutlak sıfırın altına düşürmeyi engelleyebilirsin.

get ve set erişimcileri

get erişimcisi bir değer döndürür; dışarıdan okuma isteğini yanıtlar. set erişimcisi atanan değeri alır; value anahtar kelimesiyle ulaşılır ve private alana yazar.

Yalnız get olan özellik salt okunur olur: dışarıdan değiştirilemez. Yalnız set olan özellik ise salt yazılır. Çoğu durumda ikisi birden bulunur. Erişimcilerin içine istediğin kodu yazabilirsin; doğrulama, günlükleme, yan etki hepsi mümkündür.

Uygulama Temperature sınıfına özellik ekle

Bir Temperature sınıfı tanımla. İçine private double celsius; alanını ekle. Ardından public double Celsius özelliğini tanımla; get gövdesinde return celsius;, set gövdesinde celsius = value; yaz. Main içinde örnek oluştur, Celsius = 36.5 ata ve Celsius'u yazdır.

Örnek çözümü göster
Temperature'a private celsius alanı ve Celsius özelliği ekle. Main içine Temperature t = new Temperature(); t.Celsius = 36.5; Console.WriteLine(t.Celsius); yaz.
Örnek çözüm:
using System;

class Temperature
{
    private double celsius;

    public double Celsius
    {
        get { return celsius; }
        set { celsius = value; }
    }
}

class Program
{
    static void Main()
    {
        Temperature t = new Temperature();
        t.Celsius = 36.5;
        Console.WriteLine(t.Celsius);
    }
}

Kendini test et

  1. get erişimcisini tamamla

    public double Celsius { get { return ____; } }
    Cevabı göster
    public double Celsius { get { return celsius; } }
  2. Hangisi salt okunur özelliktir?

    • public string Name { get; }
    • public string Name { get; set; }
    • public string Name;
    • public string Name { set; }
    Cevabı göster

    public string Name { get; } — Doğru. Yalnız get olan özellik salt okunurdur.

  3. Erişimciyi davranışına eşle

    get
    Okuma
    set
    Yazma
    value
    Atanan değer
    { get; }
    Salt okunur

Orta seviye bölümündeki tüm dersler