簡體   English   中英

在Java中,為什么@Nullable具有運行時轉儲

[英]In Java, why does @Nullable have runtime rentention

正如標題所說,擁有@Nullable和@Nonull可以幫助你的ide或linter在編譯時捕獲bug,但為什么它有運行時保留?

可以想象,運行時保留將允許AOP代理檢測傳遞給@Nonnull -annotated參數的空參數,並拋出異常或以其他方式處理它。 您可以爭辯說,這是一種處理運行時空檢查的更好方法,即在代碼中使用顯式空檢查。

是的,這些注釋對於靜態編譯檢查非常有用,但是沒有理由它們不能在運行時用於相同的目的。 它們作為注釋的有效性延伸到運行時域,不像用於代碼生成之類的注釋。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM