Инкапсуляция (содержание в оболочке) – объединение и локализация в рамках объекта данных и функций обработки этих данных (данные – поля, функции - методы). Данный принцип позволяет гибко разграничивать доступ к свойствам объекта, отсюда уменьшение искажения свойств объекта и несанкционированного использования.
Для доступа к методам и полям испол. идентификаторы доступа:
Private – закрытый – досдуп только в пределах класса, protected - защищенный, public – открытый – доступ в любом месте программы).
По умолчанию все поля и методы определяются как закрытые.
Согласно принципу инкапсуляции внутренние данные класса не должны быть доступны пользователю на прямую, для доступа к полям должны использоваться специальные методы.
class Cdate
{
Private:
int month, day, year;
Public:
void set(int d, int m, int y);
{
month = m;
day = d;
year = y;
}
void get(int &d, int &m, int &y);
{
d = day;
m = month;
y = year;
} ………………………..};
Преимущества инкапсуляции.
- возможность проверки правильности значений,
- возможность изменения способа представления данных без изменения других частей программы используя класс.
Недостатки инкапсуляции.
- уменьшения скорости работы, за счет дополнительных проверок и вызовов методов.