Абстракция против Инкапсуляции

Автор: Laura McKinney
Дата создания: 8 Апрель 2021
Дата обновления: 1 Май 2024
Anonim
Абстракция в ООП
Видео: Абстракция в ООП

Содержание

Абстракция - это процесс
сбор важной информации, которая станет основой для построения
сложная система. Инкапсуляция - это процесс разработки сложной системы
проще управлять конечным пользователем, не беспокоясь о его внутренних сложностях.
Разница между абстракцией и инкапсуляцией заключается в том, что
абстракция направлена ​​на выявление основных компонентов для создания
Система в то время как инкапсуляция фокусируется на сокрытии внутренних сложностей системы.


Содержание: Разница между абстракцией и инкапсуляцией

  • Сравнительная таблица
  • Что такое абстракция?
    • пример
  • Что такое инкапсуляция?
    • пример
  • Ключевые различия между абстракцией и инкапсуляцией
  • Заключение

Сравнительная таблица

основной абстракция Инкапсуляция
Определение Элементы, которые необходимы для разработки
система.
Инкапсуляция - это процесс разработки сложной системы
Достижение Достигается путем инкапсуляции. Достигается путем создания членов
класс как частный.
Фокусы Фокус на том, что должно быть сделано Фокус на том, как это должно быть сделано.
заявка На уровне дизайна. Во время реализации
уровень.
Примеры Графический интерфейс сотового телефона, он имеет несколько значков для нажатия, которые на
нажмите выполнить конкретную функцию.
Когда значок нажимается,
конечный пользователь не имеет представления о деталях его реализации

Что такое абстракция?

Абстракция - это механизм извлечения важных элементов
для создания системы, без подробностей ее реализации. В
абстракция, мы должны сосредоточиться только на том, что должно быть сделано, а не как
должно быть сделано. Абстракция - это мыслительный процесс, он решает проблемы при проектировании
уровень.


Иерархическая классификация помогает нам справляться со сложной абстракцией. Это позволяет нам разбить сложную систему на управляемые части и создать многоуровневую семантику. Кроме того, это обобщение.

пример

Давайте возьмем хороший пример автомобиля, он создан из ряда подсистем, таких как двигатель, тормоза, освещение, аудиосистема, кресло и многое другое. «Тормоз», который является подсистемой велосипеда, можно далее отнести к категории тормозов передних колес и тормозов задних колес, но в целом мы рассматриваем всю подсистему как тормоза. Таким образом, мы должны управлять сложной системой с помощью иерархической классификации, которая помогает нам выяснить, каковы основные элементы, которые потребуются для разработки системы.

Таким образом, абстракция только обобщает, какие элементы
важно для создания системы, то есть просто подбирая важные.

Что такое инкапсуляция?

Инкапсуляция является важной особенностью объектно-ориентированного программирования. Это механизм, который
связывает код и данные вместе и защищает их от внешних
вмешательство. То есть инкапсуляция скрывает сложность системы,
поскольку ключевое слово здесь - скрытие данных. Это похоже на защитный
Оболочка, которая скрывает код и данные внутри класса, получая
другой код, который определен вне класса и функции / метода-члена
которые не являются членами класса.


Когда код и данные, которые работают
на этих данных, связаны в классе, затем создаются объекты этого класса.
Доступ к элементам элемента ограничен четко определенным интерфейсом.
известный как спецификатор доступа. Есть три доступа
Спецификаторы в Java и C ++ Public, Private, Secure.

Инкапсуляция особенно достигается путем создания кода
и данные, которые оперируют данными, как частные. Закрытые члены класса не могут получить доступ из определенного кода
вне класса. Это помогает предотвратить злоупотребление данными, а также скрывает сложность
кода.

пример

Давайте возьмем пример мобильного телефона. В сотовом телефоне вы
может выполнять множество функций, таких как нажатие на картинку, запись видео / аудио,
доступ к Интернету и многое другое. Вы считаете это
характеристики сотового телефона. Но конечному пользователю не нужно
понять внутреннюю сложность этих функций, прежде чем использовать эти
программы, а также вам не нужно изменять функциональность какой-либо функции.

Таким образом, инкапсуляция скрывает сложность и
предотвратить злоупотребление данными.

Ключевые различия между абстракцией и инкапсуляцией

  1. Абстракция фокусируется на компонентах, которые необходимы для
    построить систему, в то время как инкапсуляция фокусируется на сокрытии сложности
    система.
  2. Абстракция выполняется на уровне проектирования системы и
    инкапсуляция выполняется, когда система имеет
    был реализован.
  3. Основным мотивом абстракций является то, что нужно сделать, чтобы построить
    Система в то время как основной мотив инкапсуляции, как это должно быть сделано, чтобы построить систему.
  4. Абстракция достигается
    инкапсуляция, тогда как инкапсуляция достигается путем создания элементов
    система приватная.

Заключение

Абстракция и инкапсуляция
оба являются важной особенностью ООП. Великолепная инкапсуляция может привести к фантастической абстракции.