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

От чего наследоваться кроме интерфейса, чтобы реализовать полиморфизм

В Java полиморфизм можно реализовать не только через интерфейсы, но и через:

  1. Абстрактные классы - могут содержать как абстрактные методы (обязательные к реализации), так и конкретную реализацию:
java
abstract class Animal {
    abstract void makeSound();
    void breathe() { System.out.println("Breathing..."); }
}
class Dog extends Animal {
    void makeSound() { System.out.println("Woof!"); }
}
  1. Обычные классы - через переопределение методов родителя:
java
class Vehicle {
    void move() { System.out.println("Moving"); }
}
class Car extends Vehicle {
    @Override
    void move() { System.out.println("Driving"); }
}

Ключевое отличие: интерфейсы (Java 8+) поддерживают множественное наследование и default-методы, тогда как классы - только одиночное наследование.

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

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

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

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