2016-05-12 23 views
0

在java中,如果代碼中存在異常,並且未經處理或未拋出,則編譯將失敗。但在Scala中,它將成功編譯。如何知道在scala代碼中是否有未經處理的異常?

那麼如何知道在scala代碼中是否有未經處理的異常呢?

+1

關於檢查異常的[流行觀點](http://stackoverflow.com/q/613954/2032064)是,它們不是一個好主意,所以你不應該錯過它們。 – Mifeet

回答

0

這種情況與Java中未經檢查的異常(RuntimeExceptions)相同:編譯器不會抱怨它們沒有被處理。

你必須依賴源代碼和文檔來查看你可能從一段代碼中得到什麼異常。在你希望調用者處理它們時(即,當你在Java中使用一個檢查的異常)時,你應該避免使用異常支持Try monad。

+0

但我不知道是否有例外,如何避免它?你如何檢查scala中的異常? – Guo

+0

你不能。所有例外都未經檢查。當然,如果你覺得你應該的話,你仍然可以抓住他們。但編譯器不會強迫你。 – Thilo

+0

感謝您的回答! – Guo

相關問題