Встречается на собеседованиях • сегодня

Когда лучше использовать абстрактный класс

Абстрактный класс стоит использовать, когда нужно:

  1. Общая реализация – если несколько классов имеют общую логику, которую можно вынести в родительский класс.
  2. Состояние + поведение – когда нужно хранить состояние (поля) и определять абстрактные методы для наследников.
  3. Контроль наследования – если требуется ограничить иерархию наследования (в отличие от интерфейсов, где можно реализовать множество).

Пример:

java
abstract class Animal {
    protected String name; // общее поле
    public Animal(String name) { this.name = name; }
    abstract void makeSound(); // обязательный метод для наследников
    public void sleep() { System.out.println(name + " sleeps"); } // общая реализация
}

class Dog extends Animal {
    public Dog(String name) { super(name); }
    @Override void makeSound() { System.out.println(name + " barks"); }
}

Интерфейсы лучше, когда нужна только сигнатура методов без реализации или множественное наследование.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы