Sobes.tech
Junior

Čo je to zapuzdrenie?

sobes.tech AI

Odpoveď od AI

Zapúzdrenie je mechanizmus, ktorý umožňuje skryť vnútorný stav objektu a chrániť ho pred vonkajším zásahom. Spája dáta (polia) a metódy, ktoré s týmito dátami pracujú, do jedného bloku — triedy.

V jazyku C# sa zapúzdrenie dosahuje pomocou modifikátorov prístupu (public, private, protected, internal, protected internal, private protected) a vlastností (Properties).

Príklad s použitím vlastností:

public class Osoba
{
    private int _vek; // Privátne pole

    public int Vek // Verejná vlastnosť, ktorá poskytuje kontrolovaný prístup k poľu _vek
    {
        get { return _vek; }
        set
        {
            if (value >= 0) // Validácia dát
            {
                _vek = value;
            }
            else
            {
                // Môže vyvolať výnimku alebo vykonať inú akciu
                Console.WriteLine("Vek nemôže byť záporný.");
            }
        }
    }

    public string Meno { get; set; } // Automaticky implementovaná vlastnosť

    public void ZobrazInfo()
    {
        Console.WriteLine($"Meno: {Meno}, Vek: {Vek}");
    }
}

Výhody zapúzdrenia:

  • Skrytie implementácie: Vnútorné detaily objektu sú skryté pred vonkajším kódom.
  • Kontrola prístupu: Prístup k dátam sa vykonáva cez metódy alebo vlastnosti, čo umožňuje validáciu a biznis logiku.
  • Flexibilita: Zmeny v vnútornej implementácii triedy neovplyvnia vonkajší kód, ktorý používa jej rozhranie.
  • Zlepšenie údržby: Kód sa stáva štruktúrovanejší a zrozumiteľnejší.