java – 直接跟随@SuppressWarnings的Eclipse错误(“unchecked”)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – 直接跟随@SuppressWarnings的Eclipse错误(“unchecked”),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1235字,纯文字阅读大概需要2分钟。
内容图文
![java – 直接跟随@SuppressWarnings的Eclipse错误(“unchecked”)](/upload/InfoBanner/zyjiaocheng/730/d1028568c4a94db6a4caddc60de3f430.jpg)
我似乎遇到了一些问题,这个问题可以抑制我从文件中反序列化包含MyObject类型的ArrayList的警告.我得到的错误信息来自该行
objects = (ArrayList<MyObject>) ois.readObject();
它写道:
Type safety: Unchecked cast from Object to ArrayList<MyObject>
在我将@SuppressWarnings(“unchecked”)应用于特定警告后,它表示我的对象对象无法解析为某种类型.
ArrayList<MyObject> objects;
try {
FileInputStream fis = new FileInputStream(new File("myfile.txt"));
ObjectInputStream ois = new ObjectInputStream(fis);
@SuppressWarnings("unchecked")
objects = (ArrayList<MyObject>) ois.readObject(); //Getting 'objects cannot be resolved to a type'
fis.close();
}
catch (Exception e) {
objects = new ArrayList<MyObject>();
}
这很奇怪,因为如果我将@SuppressWarnings(“unchecked”)应用于整个方法,那么错误就会消失.此外,它发生在多台机器上,而不仅仅是在一台机器上.
当我只抑制错误的一个实例时,是否有人对正在发生的事情有任何见解使得此错误出现?
解决方法:
@SupressWarnings(“unchecked”)只能应用于对象的声明,这将起作用:
@SuppressWarnings("unchecked")
ArrayList<String> objects = (ArrayList<String>) ois.readObject();
……但可能无法解决您的问题.其原因可以在JDK源代码中找到. @SupressWarnings注释上的@Target注释定义了允许的位置:
@Target({TYPE, FIELD, METHOD, PARAMETER, CONSTRUCTOR, LOCAL_VARIABLE})
内容总结
以上是互联网集市为您收集整理的java – 直接跟随@SuppressWarnings的Eclipse错误(“unchecked”)全部内容,希望文章能够帮你解决java – 直接跟随@SuppressWarnings的Eclipse错误(“unchecked”)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。