Рассмотрите вызов обобщённого метода с лямбдой: откуда компилятор берёт тип параметра, который самой лямбдой явно не назван?
База 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
При создании обобщённого объекта через diamond-оператор от чего зависит фактически выведенный аргумент типа?
Почему wildcard нельзя указать как явный аргумент типа при вызове обобщённого метода?
Разрешено ли указывать wildcard в качестве аргумента типа у наследуемого или реализуемого типа Java?
Как система типов Java объясняет запрет использовать параметризованный тип как тип элемента аннотации?
Как стирание типов обеспечивает бинарную совместимость старого байткода с библиотекой, в которой API позже параметризовали?
В чём различие между наследником, который фиксирует параметр обобщённого базового класса, и наследником, который передаёт этот параметр дальше?
Сопоставьте ковариантность массивов Java с инвариантностью обобщённых коллекций: какой механизм безопасности обеспечивает каждое решение?
Допустим, тип T может наследовать реализацию Comparable у своего базового класса. Зачем ограничивать T через Comparable<? super T>, а не через Comparable<T>?
Что объясняет ситуацию, когда приведение объекта к параметризованному типу проходит, но ошибка возникает только при чтении элемента?
Что изменяется при явном указании аргумента типа обобщённого метода по сравнению с автоматическим выводом типа?
Какова область действия параметра типа, объявленного только у конструктора класса без параметров типа?
Метод объявлен с параметром типа в throws: как компилятор определяет, обязан ли вызывающий обработать такое исключение?
Чем List<?> отличается от List<Object> по допустимым операциям записи и чтения?
При чтении из коллекции с параметризацией «неизвестный супертип Integer» какой статический тип получает элемент и почему?
В практическом API нужно вернуть объект типа T после проверки значения во время выполнения. Какую роль здесь играет Class<T>?
Что препятствует обобщённому коду создать экземпляр параметра типа через обычный конструктор?
Разберите ограничение: почему wildcard в Java не может одновременно иметь верхнюю и нижнюю границу?
При проектировании класса, реализующего один и тот же обобщённый интерфейс с двумя разными аргументами типа, объясните запрет такой конструкции в Java.
Что мешает Java использовать примитивный тип в качестве аргумента параметра типа?
Показано 101–120 из 403