Threadser.net
數據
關鍵字
Threads
Login
串文
串文鏈結
2024-11-07 03:57
在學Java的新手又來向各位IT專業人士請教了 想問各位throws是拿來幹嘛的,上網查了很多解釋都有看沒有懂,只查到是「宣告可能出錯的情況」,但在程序運行的時候編碼不就早已經固定好的了嗎?那宣告出錯可能的用意是什麼?
讚
17
回覆
19
轉發
作者
🐅
tynickc
粉絲
1,039
串文
123+
讚
回覆
轉發
24小時粉絲增長
發文前
1,035
發文後24小時
1,038
變化
+3 (0.29%)
互動率
(讚 + 回覆 + 轉發) / 粉絲數
3.46%
回覆 (BETA)
最先回覆的內容
發文後
用戶
內容
21 分鐘內
科技職場Wei什麼
techcareerwhys
比如說你程式要讀一個檔案為input,使用者放了一個路徑檔案不存在,你可以throws IOException. 呼叫你函數/程式的人如果遇到這種狀況他會收到這個exception,決定處理方式,可以是顯示錯誤給使用者,或是ignore繼續執行。 主要是讓程式間可以互相溝通意外發生的方法
22 分鐘內
Paddy Deng
paddycup1
使用者跟和外部裝置的 io 都蠻容易出錯的,這我們控制不了 比方說你想要數字但使用者輸入 hello,比方說你想要從某個網址抓資料但是你 WiFi 斷了 還有一些小地方像是除以 0 啦,在無號數字型別 2 - 3 試圖製造負數之類的
26 分鐘內
Chun Yu Chen
killkli
因為存在你無法預期的狀況,最基本的狀況就是讀取使用者輸入的資料(或者任何外部來的資料) 舉例說,有一個程式可以處理1,2,3這三種狀況,但如果使用者輸入的是不是這三種內容,你可以有幾個解決方法,一個是預設好會return 某個值,加入你是在某個function中,而且知道呼叫你的人會懂有這個狀況會發生 另一種方法就是利用throw exception 的方法,使用這個的情景也是要再更上層的呼叫者有預期可能會有意外發生的情景才會有效 比較高階的語言中,大部分的程式都有被包裹在虛擬器的意外捕捉環境裡面,所以大部分錯誤都可以看到一些錯誤訊息(那一層的程式丟出錯誤的意外了)
一小時內
Robbin Lee
robbin0919
寫程式,不是只顧自己寫的,同時要預測不預期的狀況,如果能預測處理方式最好,萬一不行,那至少程式執行到掛了,也要留下一些線索,讓你能重現問題,而不是一問三不知
一小時內
yuan
yuanurayaha
反過來想如果不寫會怎樣 可能更快想通
2 小時內
J C
stelladecaelo
Remember to throw but don't throw ex unless you want to hide the stack trace
2 小時內
林意儒
weelow_furble
因為特定情況的錯誤無法用語法避免,並且該錯誤是沒有確切結果的情況之類的
3 小時內
Catherine Hsu
catherine.hsu_
那catch error和throw兩者有什麼差別嗎?🫠 教學影片有的時候會交替寫,真的兩個功能都一樣嗎?
3 小時內
Christopher Z
colorful_tree
就是防止程序不會崩潰但是又可以幫你排查出錯誤的方式。
9 小時內
Jian Hsiang Peng
jianhsiangpeng
一個是編譯時期的錯誤,一個是執行時期的錯誤 你說的是編譯器會驗證程式碼符合特定的程式語言 但不保證執行時期不會有問題 最容易遇到就是用了一個設 null 的物件