【Java书写】@SuppressWarnings("unchecked") 以及强制转换和泛型的疑问

来源:互联网 发布:解屏幕锁软件 编辑:程序博客网 时间:2024/06/05 11:34

项目中有如下代码:

<pre name="code" class="java"><span style="white-space:pre"></span>private GeneratedMessage msg;
@SuppressWarnings("unchecked")
public <T> T getMsg() {return (T) msg;}


问题①@SuppressWarnings("unchecked")应该出现的场合,

           SuppressWarnings是告诉编译器对批注的代码元素的内部的某些警告保持静默。

           unchecked是用于执行了未检查的转换时的警告,例如当使用集合时没有使用泛型来制定集合的类型

         虽然看起来@SuppressWarnings屏蔽了潜在的错误,但实际上它将提高代码安全性,因为他会提醒你,防止你对警告无动于衷。

问题②

public <T> T getMsg() {return (T) msg;}
这个写法在外部调用的时候就不用写强转了,这样处理是好是坏?

0 0
原创粉丝点击