Что произойдёт, если подкласс объявит экземплярный метод с той же сигнатурой, что статический метод суперкласса?
База Hintsage
Программирование Java
Язык Java, JVM и экосистема серверной разработки.
Темы раздела
Выберите подраздел
- 3 вопроса
Общие вопросы
Смешанные вопросы по Java.
Открыть раздел - 50 вопросов
Java Core
Базовая семантика языка, типы, методы, классы и ключевые конструкции.
Открыть раздел - 50 вопросов
ООП и система типов
Наследование, полиморфизм, интерфейсы, классы и разрешение методов.
Открыть раздел - 50 вопросов
Коллекции
Java Collections Framework, контракты, реализации и сложность операций.
Открыть раздел - 50 вопросов
Многопоточность
Java Memory Model, потоки, синхронизация и java.util.concurrent.
Открыть раздел - 50 вопросов
JVM и память
Загрузка классов, память JVM, GC, JIT и диагностика.
Открыть раздел - 50 вопросов
Generics
Параметризация типов, bounds, wildcards и стирание типов.
Открыть раздел - 50 вопросов
Stream API
Функциональные интерфейсы, streams, collectors и параллельная обработка.
Открыть раздел - 50 вопросов
Исключения
Иерархия исключений, обработка ошибок и управление ресурсами.
Открыть раздел
Практика
Вопросы: Программирование Java
Разберите, почему объявление C не компилируется, хотя в нём есть метод с совпадающими именем и параметрами:
interface A {
Number value();
}
interface B {
String value();
}
class C implements A, B {
public String value() {
return "ok";
}
}
По какой причине конструктор базового класса не может быть переопределён в классе-наследнике?
При наличии перегрузок, где один кандидат требует расширения примитивного типа, а другой — упаковки в объект, какой кандидат выберет Java?
При попытке реализовать один и тот же обобщённый интерфейс с разными параметрами типа какой конфликт предотвращает компилятор Java?
Что обязан сделать неабстрактный класс, если его абстрактный суперкласс объявляет метод, совпадающий с default-методом интерфейса?
В подклассе из другого пакета почему защищённый экземплярный метод базового класса нельзя вызвать через произвольную ссылку на базовый тип?
Что мешает интерфейсу Java объявить default-реализацию equals?
Как компилятор выбирает перегрузку метода, если аргументом служит null и подходят несколько ссылочных типов?
В классе, реализующем два интерфейса с одинаковым абстрактным методом, почему одна реализация может удовлетворить обоим контрактам?
Что произойдёт при попытке вызвать статический метод интерфейса через тип реализующего класса?
Разберите последствия объявления метода базового класса как final для полиморфного вызова.
Класс объявляет реализацию интерфейса, но сам не содержит его метода: когда вызов через интерфейсную ссылку всё же будет корректен?
Какое поле прочитает Java при обращении к скрытому полю через ссылку базового типа?
При приведении ссылки интерфейсного типа к типу класса что именно определяет, завершится ли приведение успешно?
Представьте, что в одном классе объявляют два метода с одинаковыми параметрами, но разными возвращаемыми типами: почему Java отвергает такой класс?
Сравните ограничения на checked- и unchecked-исключения при переопределении метода: что может изменить метод-наследник?
Разберите последствия объявления переопределяющего метода с более узким модификатором доступа.
В чём состоит ограничение private-методов интерфейса для класса, который этот интерфейс реализует?
Объясните, какая реализация переопределяемого экземплярного метода выбирается при его вызове из конструктора базового класса.
Показано 301–320 из 403