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

Что такое динамическая диспетчеризация метода

Динамическая диспетчеризация метода - это механизм в Java, при котором конкретная реализация метода выбирается во время выполнения программы на основе фактического типа объекта, а не типа ссылки. Это основа полиморфизма.

java
class Animal {
    void sound() {
        System.out.println("Some sound");
    }
}

class Dog extends Animal {
@Override
void sound() {
System.out.println("Bark");
}
}

public class Main {
public static void main(String[] args) {
Animal myAnimal = new Dog(); // Ссылка типа Animal, объект Dog
myAnimal.sound(); // Вызовется Dog.sound() - динамическая диспетчеризация
}
}

text

Ключевые моменты:
1. Работает только с методами экземпляра (не статическими)
2. Зависит от реального типа объекта (не от типа ссылки)
3. Реализуется через таблицу виртуальных методов (vtable) в JVM
4. Основной механизм для реализации полиморфизма в Java
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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