日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

1.4 @SuppressWarnings:抑制编译器警告

發布時間:2025/3/20 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 1.4 @SuppressWarnings:抑制编译器警告 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Java 中的 @SuppressWarnings 注解指示被該注解修飾的程序元素(以及該程序元素中的所有子元素)取消顯示指定的編譯器警告,且會一直作用于該程序元素的所有子元素。例如,使用 @SuppressWarnings 修飾某個類取消顯示某個編譯器警告,同時又修飾該類里的某個方法取消顯示另一個編譯器警告,那么該方法將會同時取消顯示這兩個編譯器警告。

@SuppressWarnings 注解主要用在取消一些編譯器產生的警告對代碼左側行列的遮擋,有時候這樣會擋住我們斷點調試時打的斷點。如下圖所示。

如果你確認程序中的警告沒有問題,可以不用理會。通常情況下,如果程序中使用沒有泛型限制的集合將會引起編譯器警告,為了避免這種編譯器警告,可以使用 @SuppressWarnings 注解消除這些警告。

注解的使用有以下三種:

  • 抑制單類型的警告:@SuppressWarnings(“unchecked”)
  • 抑制多類型的警告:@SuppressWarnings(“unchecked”,“rawtypes”)
  • 抑制所有類型的警告:@SuppressWarnings(“unchecked”)

抑制警告的關鍵字如下表所示。

關鍵字用途
all抑制所有警告
boxing抑制裝箱、拆箱操作時候的警告
cast抑制映射相關的警告
dep-ann抑制啟用注釋的警告
deprecation抑制過期方法警告
fallthrough抑制在 switch 中缺失 breaks 的警告
finally抑制 finally 模塊沒有返回的警告
hiding抑制相對于隱藏變量的局部變量的警告
incomplete-switch忽略不完整的 switch 語句
nls忽略非 nls 格式的字符
null忽略對 null 的操作
rawtypes使用 generics 時忽略沒有指定相應的類型
restriction抑制禁止使用勸阻或禁止引用的警告
serial忽略在 serializable 類中沒有聲明 serialVersionUID 變量
static-access抑制不正確的靜態訪問方式警告
synthetic-access抑制子類沒有按最優方法訪問內部類的警告
unchecked抑制沒有進行類型檢查操作的警告
unqualified-field-access抑制沒有權限訪問的域的警告
unused抑制沒被使用過的代碼的警告

使用 @SuppressWarnings 注解示例代碼如下:

public class HelloWorld {@SuppressWarnings({ "deprecation" })public static void main(String[] args) {Person p = new Person();p.setNameAndAge("C語言中文網", 20);p.name = "Java教程";} }

在 Eclipse 顯示如下圖所示。


上述代碼第 2 行使用 @SuppressWarnings({ “deprecation” }) 注解了 main 方法。在《Java @Deprecated注解》一節中的 Person 代碼中,這些 API 已經過時了,所以代碼第 4 行~第 6 行是編譯警告,但是在使用了 @SuppressWarnings 注解之后會發現程序代碼的警告沒有了。

總結

以上是生活随笔為你收集整理的1.4 @SuppressWarnings:抑制编译器警告的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。