昨晚終於搞定這個難纏的類別測試, 原本想說沒時間再弄Swing, 只好先晾著, 考完試再來debug. 昨晚手癢難耐, 再仔細看程式碼, 原來 CANNOT FIND SYMBOL的原因是, 我之前將程式名稱取名為ProgressMnonitorInputStream.java, 編譯過後就產生了ProgressMonitorInputStream.class, 當我import javax.swing.* 並不會真的從javax.swing裡匯入ProgressMonitorInputStream這個類別, 反而是優先匯入工作目錄下的那個有問題的, 導致 cannot fin symbol. 將之刪除後即OK.
這烏龍以前也犯過, 所以切忌, 絕對不要把類別程式名稱取跟Java API 套件裡的類別同名, 否則就可能出現 "CANNOT FIND SYMBOL" 之編譯錯誤. 這個BUG解決後, 還是沒顯示進度列, 檢查半天原來我還是從fis去read(), 難怪不會觸發對話框. 必須利用pmis自己的read方法才行.
吼, 搞定這個終於可以放心準備考試了. 電腦永遠不會錯, 錯的一定是人腦.
沒有留言 :
張貼留言