В чем [практическая] разница между кастингом в строке 1 и строке 2 здесь, учитывая Java 6:
if (obj instanceof HashMap) {
HashMap meta = (HashMap) obj; // line 1, raw-type warnings
// vs
HashMap<?, ?> meta = (HashMap<?, ?>) obj; // line 2, no warnings
// ..
}
Почему кто-то должен использовать строку 2 (без предупреждений, типобезопасность), но кажется, что приведенную карту нельзя использовать осмысленно (например, put()/get()
)?