Как проверить в if, что объект относится к определённому типу? Как работать с объектом как с конкретным классом, если тип неизвестен заранее?

Оператор instanceof в Java используется для проверки, является ли объект экземпляром определённого класса или его подкласса.

Короткий ответ

Что ответить на собеседовании

Оператор instanceof в Java используется для проверки, является ли объект экземпляром определённого класса или его подкласса.

Подробный разбор

Ответ с пояснениями

Оператор instanceof в Java используется для проверки, является ли объект экземпляром определённого класса или его подкласса.

Он возвращает true, если объект принадлежит указанному типу, и false — если нет.

Пример:

class Animal {}
class Dog extends Animal {}

Animal animal = new Animal();
Dog dog = new Dog();

System.out.println(animal instanceof Animal); // true
System.out.println(dog instanceof Animal);    // true, так как Dog наследует Animal
System.out.println(animal instanceof Dog);    // false

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

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее