类型转换参数化类型对象时是否可以避免unchecked
警告?例如,下面是我面临的实际情况,var1
是JComboBox<RandomType>
我希望将其存储在 aMap
然后检索它的类型,这迫使我进入以下情况。
JComboBox<RandomType> var1 = new JComboBox<RandomType>();
Object varRaw = var1;
JComboBox<RandomType> var2 = (JComboBox<RandomType>) varRaw;
JComboBox<RandomType> var3;
if (JComboBox.class.isAssignableFrom(varRaw.getClass())) {
var3 = JComboBox.class.cast(varRaw);
}
常规转换和条件转换都会导致相同的警告。
在这种情况下甚至可以避免该警告而不必使用@SuppressWarnings
注释?