- Java編程從入門到精通
- 胡平 劉濤主編
- 398字
- 2025-04-02 16:03:10
1.6.3 邏輯錯誤
邏輯錯誤是指程序通過了編譯,且運行時沒有出現(xiàn)任何異常,但實際的運行結(jié)果與預期不一致。例如,預期得到A與B的乘積,但實際計算的卻是A與B的和。
在軟件的開發(fā)階段,代碼出現(xiàn)邏輯錯誤是不可避免的,即使對于有著豐富經(jīng)驗的開發(fā)者也是如此。邏輯錯誤發(fā)生時,通常不會出現(xiàn)任何異常或提示,因而這種錯誤也是最難察覺的。尋找具有邏輯錯誤的代碼所耗費的時間往往比改正這個錯誤要多得多。
通常,應先根據(jù)程序的輸出信息判斷出錯誤所在的大致位置(范圍),然后通過人工檢查的方式逐行檢查范圍內(nèi)的每行代碼是否正確——注意不是檢查語法上是否正確,而是檢查代碼是否完成了預期的邏輯,如“應該是乘而不是加”。
人工檢查的方式只適合于程序的代碼行數(shù)較少或判斷出的錯誤所在范圍較小的情況,在實際開發(fā)中,這些情況很少被滿足。另外,由于粗心或思維定勢等原因,這種方式經(jīng)常不能檢查出錯誤所在,因此,更為可靠地定位并改正邏輯錯誤的方法是調(diào)試。
推薦閱讀
- Maven Build Customization
- FFmpeg入門詳解:音視頻流媒體播放器原理及應用
- 精通軟件性能測試與LoadRunner實戰(zhàn)(第2版)
- Instant Typeahead.js
- 基于差分進化的優(yōu)化方法及應用
- Mastering Swift 2
- Julia Cookbook
- 匯編語言程序設(shè)計(第3版)
- AutoCAD VBA參數(shù)化繪圖程序開發(fā)與實戰(zhàn)編碼
- 零基礎(chǔ)入門學習Python
- Python面向?qū)ο缶幊蹋簶?gòu)建游戲和GUI
- 深入淺出Serverless:技術(shù)原理與應用實踐
- ExtJS高級程序設(shè)計
- Machine Learning in Java
- Image Processing with ImageJ