Junior
Инкапсуляция деген эмне?
sobes.tech AI
AIден жооп
Капсулация — бул механизм, ал аркылуу объекттин ички абалын жашырып, сырттан кийлигишүүдөн коргойт. Ал маалыматтарды (майдандарды) жана алар менен иштөөчү методдорду бир блокко — классга — бириктирет.
C# тилинде капсулацияга жетүү үчүн жеткиликтүүлүк модификаторлору (public, private, protected, internal, protected internal, private protected) жана мүлктөр (Properties) колдонулат.
Мисал катары мүлктөрдү колдонуу:
public class Адам
{
private int _жаш; // Жеке майдан
public int Жаш // Жалпы мүлк, ал _жаш майданына көзөмөлдөнгөн жетүүнү камсыздайт
{
get { return _жаш; }
set
{
if (value >= 0) // Маалыматтарды текшерүү
{
_жаш = value;
}
else
{
// Исключение чыгарып же башка аракет кылса болот
Console.WriteLine("Жаш терс болбойт.");
}
}
}
public string Аты { get; set; } // Автоматтык түрдө ишке ашырылган мүлк
public void МаалыматтыКөрсөт()
{
Console.WriteLine($"Аты: {Аты}, Жаш: {Жаш}");
}
}
Капсулациянын артыкчылыктары:
- Ишке ашыруунун жашырылышы: Объекттин ички деталдары сырттан келген коддон жашырылган.
- Кирүү көзөмөлү: Маалыматтарга кирүү методдор же мүлктөр аркылуу жүргүзүлөт, бул валидация жана бизнес логикасын камсыздайт.
- Ийкемдүүлүк: Класс ичиндеги өзгөртүүлөр анын интерфейсин колдонгон сырткы кодго таасир этпейт.
- Түзөтүүнү жакшыртуу: Код структураланган жана түшүнүктүү болот.