Sobes.tech
Назад к вопросам
Middle
7

Можно ли создать объект абстрактного класса в Java?

Компании, где спрашивали
hytech

Ответ от нейросети

sobes.tech AI

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

Пример:

abstract class Animal {
    abstract void sound();
}

public class Main {
    public static void main(String[] args) {
        Animal a = new Animal() {
            void sound() {
                System.out.println("Meow");
            }
        };
        a.sound(); // Выведет "Meow"
    }
}

Таким образом, объект создаётся не абстрактного класса напрямую, а анонимного класса, который его наследует и реализует все абстрактные методы.