我有一个此类(称为child
),它从Swing
Java库中扩展了JComboBox类。现在,当我创建的对象child
并尝试addItem(Object)
通过传入来对其调用方法时String
,会收到以下警告:
Type safety: The method addItem(Object) belongs to the raw type JComboBox. References to generic type JComboBox<E> should be parameterized.
调用此方法的正确方法是什么?我无法实例化child
泛型类型,<String>
因为child
它不是泛型的;我看不出该怎么做。任何帮助,将不胜感激。
PS。child
不能更改的内容。
您想要的是让您的孩子成为孩子的孩子JComboBox<String>
,而不仅仅是孩子JComboBox
。这将停止弹出的小警告。
例子:
public class Child extends JComboBox<String>{
}
当您执行此操作时,所有通用方法,字段等现在都是aString
而不是a Object
。
编辑:
我看到你说过你不能改变孩子的班级。这使事情变得相当困难。
确实没有做到这一点的直接方法,即使解决方法最终仍会显示此警告。您可以使用的一个选项(我可以看到)用于@SuppressWarnings("unchecked")
产生警告的代码上方的注释。这将阻止警告显示。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句