您好,登錄后才能下訂單哦!
本篇內容介紹了“Java的編譯時錯誤和運行時錯誤問題怎么解決”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
1. 要區分編譯時錯誤和運行時錯誤,就應該先明白什么是編譯?什么是運行?
首先,先看一下這張圖:
編譯期就是將我們寫的java源代碼交給編譯器執行的過程,起翻譯的作用,該過程主要對java源代碼的語法進行檢查,如果沒有語法錯誤,就將源代碼編譯成字節碼文件(即.class文件);
運行期則是將字節碼文件(.class文件)加載到內存中交給java虛擬機執行,直到程序執行結束的過程,該過程主要對程序的邏輯錯誤進行檢查,如果沒有邏輯錯誤,程序的功能得到實現,輸出結果。
2. 編譯期和運行期的內存分配區別。
①編譯期只是在程序的字節碼文件中產生一些控制程序運行時分配內存的指令,僅僅是知道內存分配的大小以及存放的位置,不做具體的分配操作。
②運行期才是對內存真正的分配,確定程序分配內存的大小,以及這些變量該存放內存的位置。
3. 在eclipse開發java項目時,怎么區分編譯錯誤和運行錯誤?
①編譯錯誤一般指語法錯誤或者很明顯的邏輯錯誤。
如:缺少分號,少寫括號,關鍵字書寫錯誤等, 在eclipse往往會畫紅線。
②運行錯誤是在沒有編譯錯誤的基礎上運行后產生的邏輯錯誤。
如:空指針異常,除數為0,越界訪問等,一般會拋出異常。
4.例子
下面程序,編輯運行,結果為()
public class Test{ public void main(String[] args){ System.out.println("Hello world"); } }
結果:編譯無錯誤,但運行時產生異常。
在程序的字節碼文件中產生一些控制程序運行時分配內存的指令, 僅僅是知道內存分配的大小以及存放的位置, 不做具體的分配操作
是對內存的真正的分配, 確定程序分配內存的大小, 以及這些變量該存放內存的位置
編譯錯誤一般指語法錯誤或者很明顯的邏輯錯誤, 如 : 缺少分號, 少寫括號, 關鍵字書寫錯誤等
運行錯誤是在沒有編譯錯誤的基礎上運行后產生的邏輯錯誤, 如 : 空指針異常, 除數為0 , 越界訪問等
“Java的編譯時錯誤和運行時錯誤問題怎么解決”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。