ale*_*440 15 java generics collections
是否有任何情况下最好在Java中使用非泛型集合而不是通用集合(或者它们仅为向后兼容性而存在)?
Isa*_*aac 12
绝对不.如果您无法在声明时推断类型,请使用a ?作为类型说明符 - 这就是它的用途.(在某些情况下,使用?会限制您调用某些方法,例如List.add().在这种情况下,您可以找到更严格的类型说明符; Object通常可以使用).
仍然支持非泛型用法,因为从技术上讲,不使用它是没有错的; 你最终会写出更多的施法指令并让自己处于较高的风险之中ClassCastException,但就规范而言,它在技术上是合法的.
总的来说,没有任何情况(我能想到)避免泛型"比使用它们更好".在最坏的情况下(当你必须使用?或Object在申报时),两种方法都是相同的.