Объектно-ориентированное программирование на С#. Андрианова А.А - 23 стр.

UptoLike

23
занимаемые объектом (закрыть используемые файлы, соединения с базами
данных и пр.).
2.2. Инкапсуляция
Следующий принцип объектно-ориентированного программирования
(ООП) инкапсуляция. Этот термин характеризует сокрытие отдельных
деталей внутреннего устройства класса от внешних по отношению к нему
объектов или пользователей. Действительно, пользователю нет
необходимости знать, из каких частей состоит экземпляр класса и каким
образом реализовано его поведение. Реализация присущих классу
структурных и поведенческих характеристик, является его собственным
делом. Более того, отдельные свойства и методы вообще могут быть
невидимы за пределами этого класса.
Покажем на примере класса «Матрица» (Matrix) применение
принципа инкапсуляции. Этот класс содержит переменные, доступ к
которым может быть осуществлен только из методов класса. Такой подход
используется для того, чтобы защитить переменные от
несанкционированного доступа. Например, если дать возможность
программисту, который будет работать с объектом класса Matrix, изменять
напрямую значения переменных для хранения размера матрицы, то эти
значения могут стать некорректными (отрицательными, очень большими,
или не соответствующими действительным размерам). А, выполняя то же
самое с помощью методов класса, можно включить в них проверку
корректности введенных значений. Для нашего класса таким методом может
быть метод ввода матрицы.
Помимо структурных характеристик класса сокрытию подлежит и
реализация операций класса. Для пользователя нет необходимости знать, как
реализован тот или иной метод. Надо знать только то, что метод выполняет,
как к нему обратиться и как воспользоваться результатом его работы.
Например, определитель квадратной матрицы можно вычислить различными
способами: методом исключений Гаусса или по формуле Лапласа
разложение по строке или столбцу. Для пользователя не имеет значения,
какой алгоритм заложен в методе класса.
Для реализации принципа сокрытия данных в объектно-
ориентированных языках программирования явно определяется способ
доступа к данным и методам класса. Доступ к элементам класса может быть
занимаемые объектом (закрыть используемые файлы, соединения с базами
данных и пр.).

                                               2.2. Инкапсуляция

     Следующий принцип объектно-ориентированного программирования
(ООП) – инкапсуляция. Этот термин характеризует сокрытие отдельных
деталей внутреннего устройства класса от внешних по отношению к нему
объектов    или пользователей.      Действительно, пользователю нет
необходимости знать, из каких частей состоит экземпляр класса и каким
образом реализовано его поведение. Реализация присущих классу
структурных и поведенческих характеристик, является его собственным
делом. Более того, отдельные свойства и методы вообще могут быть
невидимы за пределами этого класса.
     Покажем на примере класса «Матрица» (Matrix) применение
принципа инкапсуляции. Этот класс содержит переменные, доступ к
которым может быть осуществлен только из методов класса. Такой подход
используется     для    того,    чтобы    защитить      переменные     от
несанкционированного доступа. Например, если дать возможность
программисту, который будет работать с объектом класса Matrix, изменять
напрямую значения переменных для хранения размера матрицы, то эти
значения могут стать некорректными (отрицательными, очень большими,
или не соответствующими действительным размерам). А, выполняя то же
самое с помощью методов класса, можно включить в них проверку
корректности введенных значений. Для нашего класса таким методом может
быть метод ввода матрицы.
     Помимо структурных характеристик класса сокрытию подлежит и
реализация операций класса. Для пользователя нет необходимости знать, как
реализован тот или иной метод. Надо знать только то, что метод выполняет,
как к нему обратиться и как воспользоваться результатом его работы.
Например, определитель квадратной матрицы можно вычислить различными
способами: методом исключений Гаусса или по формуле Лапласа –
разложение по строке или столбцу. Для пользователя не имеет значения,
какой алгоритм заложен в методе класса.
     Для реализации принципа сокрытия данных в объектно-
ориентированных языках программирования явно определяется способ
доступа к данным и методам класса. Доступ к элементам класса может быть
                                                                       23