Привет Читатели!😍

Сначала давайте посмотрим, что такое абстракция.

Абстракция данных — это процесс сокрытия определенных деталей
и показа пользователю только важной информации.

Абстракция может быть достигнута с помощью абстрактных
классов или интерфейсов. Внутри абстрактных классов мы можем реализовать абстрактные методы.

Инкапсуляция и абстракция данных

  1. Инкапсуляция (геттеры и сеттеры) — это скрытие данных (скрытие информации), а абстракция — скрытие деталей (скрытие реализации).
  2. В то время как инкапсуляция объединяет данные и методы, воздействующие на данные, абстракция данных имеет дело с предоставлением интерфейса пользователю и сокрытием деталей реализации.

Абстрактные классы и методы.

● Если в классе есть хотя бы один абстрактный метод, класс должен быть объявлен абстрактным.

● Если класс объявлен абстрактным, он не может быть создан (объекты не могут быть созданы).

Использование абстрактного класса и абстрактных методов

● Чтобы использовать абстрактный класс, вы должны наследовать его от другого класса, предоставить реализации абстрактным методам в нем.

● Если вы наследуете абстрактный класс, вы должны обеспечить реализацию всех абстрактных методов в нем.

● Если вы хотите, чтобы класс содержал определенный метод, но хотите, чтобы фактическая реализация этого метода определялась дочерними классами, вы можете объявить метод в родительском классе как абстрактный.

● Любой класс, наследующий текущий класс, должен либо переопределить абстрактный метод, либо объявить себя абстрактным.

Интерфейсы.

● Интерфейс Java – это полностью абстрактный суперкласс, определяющий набор методов, которые должны поддерживать его подклассы.
● Интерфейс отличается от класса несколькими способами:
● Вы не можете создать экземпляр интерфейса.
● Интерфейс не содержит конструкторов.
● Все методы интерфейса являются абстрактными.
● Интерфейс не может содержать поля экземпляра. Единственные поля, которые
могут появляться в интерфейсе, должны быть объявлены как статическими, так и
окончательными.

● Интерфейс не расширяется классом; он реализуется классом
.
● Интерфейс может расширять несколько интерфейсов.

Пробуйте все больше и больше, чтобы придумать лучшее.

Надеюсь, вы получили четкую информацию.

Спасибо за прочтение!!😍