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

Может ли конструктор быть в интерфейсе

Нет, в интерфейсе Java нельзя объявлять конструкторы. Интерфейсы предназначены для определения контракта (методов), которые должны реализовывать классы. Конструкторы — это специальные методы для инициализации объектов конкретного класса, что противоречит абстрактной природе интерфейсов.

Однако, начиная с Java 8, в интерфейсах можно объявлять статические методы, которые могут использоваться для фабричных методов, имитирующих конструкторы:

java
interface MyInterface {
    static MyInterface create() {
        return new MyInterface() {};
    }
}

Но это не конструктор, а просто статический фабричный метод.

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

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

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

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