Встречается на собеседованиях • сегодня
Можно ли переопределить метод в статическом классе в Java
В Java статический класс (вложенный static класс) не может иметь переопределяемых методов, так как статические методы не поддерживают полиморфизм. Однако можно объявить статический метод с тем же именем в подклассе, но это будет сокрытие метода (method hiding), а не переопределение.
Пример:
java
class Outer {
static class Parent {
static void print() {
System.out.println("Parent");
}
}
static class Child extends Parent {
static void print() { // method hiding, not overriding
System.out.println("Child");
}
}
public static void main(String[] args) {
Parent.print(); // "Parent"
Child.print(); // "Child"
}
}Вызов зависит от типа ссылки, а не от объекта. Для переопределения используйте обычные (не статические) методы.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы