翻譯|使用教程|編輯:鮑佳佳|2020-10-21 13:29:05.297|閱讀 763 次
概述:Dataflow to/from here允許您在給定的數據處理階段識別哪些值是可能的。這些知識有助于我們在運行時潛在的錯誤發生之前檢測它們,并通過刪除冗余的檢查、條件等來優化代碼。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
IntelliJ IDEA是Java語言開發的集成環境,IntelliJ在業界被公認為優秀的Java開發工具之一,尤其在智能代碼助手、代碼自動提示、重構、J2EE支持、Ant、JUnit、CVS整合、代碼審查、 創新的GUI設計等方面的功能可以說是超常的。
在編寫代碼時,我們不斷得到靜態分析的幫助。這種看不見的機制在幕后運作,為我們提供各種建議和警告??梢?肯定地說IntelliJ IDEA比我們更了解我們的代碼。
現在,如果我們可以訪問靜態分析數據以檢查程序的工作方式或調試復雜問題該怎么解決?實際上,此功能已經存在,并且已經存在了一段時間。
它被稱為Dataflow to/from here,它允許您在給定的數據處理階段識別哪些值是可能的。這些知識有助于我們在運行時潛在的錯誤發生之前檢測它們,并通過刪除冗余的檢查、條件等來優化代碼。
考慮以下示例:
在printList方法中,我們有一個null檢查,以說明當null作為參數傳遞時的情況。當我們試圖在列表為null時打印出列表的內容時,這可以保護我們免受NullPointerException的影響。
讓我們看看該功能如何幫助我們優化此代碼。
右鍵單擊該參數,然后選擇“Analyze | Data Flow to Here并指定分析范圍。在“Analyze Dataflow”工具窗口中,單擊“Group by Leaf Expression Nullness”并打開相應的選項卡。
分析結果清楚地表明,沒有上游代碼在調用此方法時將null作為參數傳遞。
因此,我們可以安全地消除冗余的null檢查并將參數注釋為@Notnull。當您想優化代碼,但需要更多信息來指導您如何優化代碼時,數據流分析是一種可以節省大量時間并幫助您避免錯誤的工具。
使用相同的過程,您可以檢查整個輸入值范圍。有了這些信息,您可以防止出現意外的ArrayIndexOutOfBoundsExceptions之類的錯誤。
如果在運行時拋出異常,并且您有堆棧跟蹤,則確定原因變得更加容易。不需要尋找拋出它的方法并仔細檢查調用樹。相反,只需單擊引發異常的幀。
如果您以前從未使用過此功能,建議您嘗試一下。如果您希望我們進一步研究其他功能,請在評論中給我們留言。
好了這就是今天的內容了,如果今天的文章未解決你的需求,可點擊獲取更多免費教程。不要忘了在評論與我們分享您的想法和建議,慧都作為IntelliJ IDEA正版合作商,我們推出"軟件國產化服務季"活動(點擊查看詳情)!現IntelliJ正版授權在線訂購最高立減3000元!低至1333!還有多種授權方式供你選擇。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自: