java編譯時(shí)找不到符號(hào) JAVA編譯時(shí)的常見(jiàn)錯(cuò)誤有哪些?
JAVA編譯時(shí)的常見(jiàn)錯(cuò)誤有哪些?如果編寫字符串STR=“STR”,則語(yǔ)法錯(cuò)誤,編譯將出錯(cuò)。運(yùn)行錯(cuò)誤意味著語(yǔ)法正常,但邏輯錯(cuò)誤。例如,一個(gè)方法傳入一個(gè)字符串類型的變量STRstr.equals公司(“s
JAVA編譯時(shí)的常見(jiàn)錯(cuò)誤有哪些?
如果編寫字符串STR=“STR”,則語(yǔ)法錯(cuò)誤,編譯將出錯(cuò)。運(yùn)行錯(cuò)誤意味著語(yǔ)法正常,但邏輯錯(cuò)誤。例如,一個(gè)方法傳入一個(gè)字符串類型的變量STRstr.equals公司(“str”),但如果傳入的str為null,則該語(yǔ)句等價(jià)于null.equals(“str”)這肯定會(huì)引發(fā)空指針異常。以手機(jī)為例。如果編譯錯(cuò)誤是手機(jī)的部件在生產(chǎn)過(guò)程中不對(duì),那么就不能發(fā)貨。操作失誤是手機(jī)組裝出廠。當(dāng)你得到它時(shí),你不會(huì)用它打電話。如果直接用它砸核桃,手機(jī)必須報(bào)廢(諾基亞除外)。
java編譯錯(cuò)誤是怎么回事?
編譯錯(cuò)誤:編譯時(shí)發(fā)生的錯(cuò)誤,無(wú)法運(yùn)行,即javac命令中發(fā)生的錯(cuò)誤。它違反了Java的語(yǔ)法規(guī)則。如果使用eclipse,編碼時(shí)會(huì)出現(xiàn)紅色部分
運(yùn)行時(shí)錯(cuò)誤:可以編譯,但運(yùn)行時(shí)會(huì)出現(xiàn)異常,如空指針異常,主要是一些邏輯錯(cuò)誤。
語(yǔ)法錯(cuò)誤包括變量名不符合要求、變量未定義、關(guān)鍵字拼寫錯(cuò)誤,例如,如果您將for編寫為fot,則會(huì)產(chǎn)生編譯錯(cuò)誤。
Java編譯器(javac)將根據(jù)Java語(yǔ)法進(jìn)行一些檢查,不符合要求的將不會(huì)通過(guò)編譯。
編譯錯(cuò)誤與運(yùn)行時(shí)錯(cuò)誤有關(guān)。
運(yùn)行時(shí)錯(cuò)誤是運(yùn)行Java命令時(shí)發(fā)生的錯(cuò)誤。它通常拋出一個(gè)異常。
運(yùn)行錯(cuò)誤是指在運(yùn)行過(guò)程中產(chǎn)生的錯(cuò)誤(此時(shí)沒(méi)有編譯錯(cuò)誤),例如,計(jì)算5/0或其他錯(cuò)誤。
運(yùn)行錯(cuò)誤通常意味著程序編譯時(shí)沒(méi)有任何錯(cuò)誤,但執(zhí)行程序時(shí)會(huì)遇到一些障礙。例如,如果要讀取一個(gè)文本,但該文本不存在,則屬于運(yùn)行錯(cuò)誤。因?yàn)槟愕恼Z(yǔ)法本身沒(méi)有錯(cuò)誤,所以編譯是正常的,但是系統(tǒng)找不到你的源文件,所以會(huì)出現(xiàn)運(yùn)行錯(cuò)誤。
編譯錯(cuò)誤還應(yīng)包括明顯的邏輯錯(cuò)誤。
例如,如果在方法的最后一行寫入:
if(false)return“
編譯器將告訴您函數(shù)需要返回值。因?yàn)楹苊黠@