Программа «зависнет»
Download 32.74 Kb.
|
osnova javoblar
10. Инкапсуляция в C#.
Инкапсуляция — это возможность (механизм) с помощью которой мы можем спрятать от конечного пользователя реализацию того или иного метода, устройства объекта и так далее и представить в пользование только то, что необходимо для работы, обеспечив тем самым целостность объекта. Инкапсуляция –механизм, позволяющий скрыть код класса (поля, методы, функции) и ограничить доступ к коду и данным из других участков кода. Инкапсуляция определяется как процесс включения одного или нескольких элементов в физический или логический пакет. Инкапсуляция в методологии объектно-ориентированного программирования препятствует доступу к деталям реализации. Абстракция и инкапсуляция связаны с объектно-ориентированным программированием. Абстракция позволяет сделать соответствующую информацию видимой, а инкапсуляция позволяет программисту реализовать желаемый уровень абстракции. Инкапсуляция реализуется с использованием спецификаторов доступа. Спецификатор доступа определяет область видимости члена класса. C # поддерживает следующие спецификации доступа-общественного Частный защищенный внутренний Защищенный внутренний. Опять же, определение может быть немного трудным для понимания, поэтому разберемся с ним подробнее и на примерах. Пример инкапсуляции Конечным пользователем объекта, в большинстве случаев, является программист. И не всегда этим самым программистом будете вы. private double height; public double Height { get => height; set => height = value > 0 ? value : throw new Exception("Высота здания не может быть менее 0 метров"); } Что бы произошло, если бы мы не использовали инкапсуляцию и не скрыли бы от пользователя переменную height, а написали бы код «на заморачиваясь», например, вот так: public double height; Как минимум, это привело бы к тому, что мы могли бы задать отрицательное значение высоты здания, что не совсем логично, даже если это какое-то подземное сооружение. Этот только маленький пример того для чего в C# и других языках программирования используется инкапсуляция. Download 32.74 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling