1. Введение
Абстракция — одна из ключевых особенностей объектно-ориентированного программирования. Это позволяет нам скрыть сложности реализации, просто предоставляя функциональные возможности через более простые интерфейсы. В Java мы достигаем абстракции, используя либо интерфейс, либо абстрактный класс .
В этой статье мы обсудим, когда использовать интерфейс и когда использовать абстрактный класс при разработке приложений. Кроме того, основные различия между ними и то, какой из них выбрать в зависимости от того, чего мы пытаемся достичь.
2. Класс против интерфейса
Во-первых, давайте посмотрим на различия между обычным конкретным классом и интерфейсом.