Sobes.tech
Junior

İnkapsulyasiya nədir?

sobes.tech Süni İntellekt

AI-dan cavab

İnkapsulasiya, obyektin daxili vəziyyətini gizlətməyə və xarici müdaxilələrdən qorumağa imkan verən mexanizmdir. Bu, məlumatlar (sahələr) və bu məlumatlarla işləyən metodları bir blokda — sinifdə — birləşdirir.

C# dilində inkapsulasiya giriş modifikatorları (public, private, protected, internal, protected internal, private protected) və xüsusiyyətlər (Properties) vasitəsilə həyata keçirilir.

Xüsusiyyətlərdən istifadə nümunəsi:

public class Şəxs
{
    private int _yaş; // Xüsusi sahə

    public int Yaş // Ümumi xüsusiyyət, _yaş sahəsinə nəzarətli giriş təmin edir
    {
        get { return _yaş; }
        set
        {
            if (value >= 0) // Məlumatların doğrulanması
            {
                _yaş = value;
            }
            else
            {
                // İstəyə görə istisna ata və ya başqa əməliyyat edə bilərik
                Console.WriteLine("Yaş mənfi ola bilməz.");
            }
        }
    }

    public string Ad { get; set; } // Avtomatik xüsusiyyət

    public void MəlumatGöstər()
    {
        Console.WriteLine($"Ad: {Ad}, Yaş: {Yaş}");
    }
}

İnkapsulasiya üstünlükləri:

  • İcraatın gizlədilməsi: Ob'ektin daxili detalları xarici koddan gizlidir.
  • Girişə nəzarət: Məlumatlara giriş metodlar və ya xüsusiyyətlər vasitəsilə həyata keçirilir, bu da doğrulama və biznes məntiqini təmin edir.
  • Əlçatanlıq: Sinfin daxili həyata keçirilməsindəki dəyişikliklər, onun interfeysindən istifadə edən xarici kodu təsir etmir.
  • Dəstək və baxımın yaxşılaşdırılması: Kod daha strukturlaşdırılmış və anlaşılan olur.