В API параметр должен принимать коллекции списков строк, включая коллекции списков специализированных реализаций. Как верхний wildcard у внешней коллекции меняет возможность записи и чтения?
База Hintsage
Generics
Параметризация типов, bounds, wildcards и стирание типов.
Практика
Вопросы: Generics
В каком случае классу, реализующему два параметризованных интерфейса, приходится явно переопределять один и тот же default-метод, хотя после подстановки типов его сигнатуры совпадают?
При передаче аргументов разных подтипов в обобщённый метод с одним параметром T каким образом компилятор выбирает тип T?
Может ли компилятор вывести для параметра обобщённого метода тип, которого нет отдельным именем в исходном коде?
Как параметризация внешнего класса влияет на тип его нестатического внутреннего класса?
В чём различие между unchecked conversion и unchecked cast при работе с обобщёнными типами Java?
Рассмотрите вызов обобщённого метода с лямбдой: откуда компилятор берёт тип параметра, который самой лямбдой явно не назван?
При создании обобщённого объекта через diamond-оператор от чего зависит фактически выведенный аргумент типа?
Почему wildcard нельзя указать как явный аргумент типа при вызове обобщённого метода?
Разрешено ли указывать wildcard в качестве аргумента типа у наследуемого или реализуемого типа Java?
Как система типов Java объясняет запрет использовать параметризованный тип как тип элемента аннотации?
Как стирание типов обеспечивает бинарную совместимость старого байткода с библиотекой, в которой API позже параметризовали?
В чём различие между наследником, который фиксирует параметр обобщённого базового класса, и наследником, который передаёт этот параметр дальше?
Сопоставьте ковариантность массивов Java с инвариантностью обобщённых коллекций: какой механизм безопасности обеспечивает каждое решение?
Допустим, тип T может наследовать реализацию Comparable у своего базового класса. Зачем ограничивать T через Comparable<? super T>, а не через Comparable<T>?
Что объясняет ситуацию, когда приведение объекта к параметризованному типу проходит, но ошибка возникает только при чтении элемента?
Что изменяется при явном указании аргумента типа обобщённого метода по сравнению с автоматическим выводом типа?
Какова область действия параметра типа, объявленного только у конструктора класса без параметров типа?
Метод объявлен с параметром типа в throws: как компилятор определяет, обязан ли вызывающий обработать такое исключение?
Чем List<?> отличается от List<Object> по допустимым операциям записи и чтения?
Показано 1–20 из 50