У меня есть быстрый вопрос, как показано ниже: Вот простые примеры во всех этих вопросах: (! Очень хорошая книга)Сырые типов, неограниченная wilcard и ограниченные подстановочные
List a = new ArrayList();
List <?> b;
List <? extends Object> c;
Согласно Java SCJP Халид Моголами :
a = b; // ok. Widening conversion.
b = a; // ok too. No unchecked warning.
b = c; // ok
c = b; // ok
c=a; // ok but now will issue a unchecked warning. // clause 1
Я понимаю, что любые сырые типы (пример а) при присвоении любых ограниченных wilcard ссылок, бесконтрольно предупреждение проблемы (так как содержание в этой сырой типа а может быть что угодно).
Мои вопросы, так как c - это верхняя верхняя граница (? Extends objects), не должна ли быть назначена c без этого предупреждения?
Я понятия не имею, что это такое, но на самом деле вы имеете в виду верхнюю верхнюю границу? Обычно при наборе текста было бы более естественно говорить о верхней границе верхнего уровня (объединение множества типов относительно некоторого частичного порядка над ним). – Gian
Привет, добро пожаловать в stackoverflow.com! К сожалению, ваш вопрос не имеет смысла, как сейчас. Просьба уточнить это (по крайней мере, ссылку на сообщение, которое вы цитируете, исправить повторение между 2. и 3.). В противном случае сообщение будет закрыто. – sleske