Junior
Co je to zapouzdření?
sobes.tech AI
Odpověď od AI
Zapouzdření je mechanismus, který umožňuje skrýt vnitřní stav objektu a chránit jej před vnějšími zásahy. Spojuje data (pole) a metody, které s těmito daty pracují, do jednoho bloku — třídy.
V jazyce C# je zapouzdření dosaženo pomocí modifikátorů přístupu (public, private, protected, internal, protected internal, private protected) a vlastností (Properties).
Příklad s použitím vlastností:
public class Osoba
{
private int _vek; // Privátní pole
public int Vek // Veřejná vlastnost, která poskytuje kontrolovaný přístup k poli _vek
{
get { return _vek; }
set
{
if (value >= 0) // Validace dat
{
_vek = value;
}
else
{
// Může vyvolat výjimku nebo provést jinou akci
Console.WriteLine("Věk nemůže být záporný.");
}
}
}
public string Jmeno { get; set; } // Automaticky implementovaná vlastnost
public void ZobrazInfo()
{
Console.WriteLine($"Jméno: {Jmeno}, Věk: {Vek}");
}
}
Výhody zapouzdření:
- Skrytí implementace: Vnitřní detaily objektu jsou skryty před externím kódem.
- Kontrola přístupu: Přístup k datům je umožněn přes metody nebo vlastnosti, což umožňuje validaci a podnikovou logiku.
- Flexibilita: Změny v interní implementaci třídy neovlivní externí kód, který používá její rozhraní.
- Zlepšení údržby: Kód je strukturovanější a srozumitelnější.