當前位置:首頁 » 編程軟體 » 編譯與運行異常

編譯與運行異常

發布時間: 2023-05-16 16:51:55

A. java編譯出來了,已經有class文件了,但是運行卻運行不出來,什麼情況

編譯與運行出現的錯誤是兩種不同的錯誤;
編譯(即得到class文件)出現的是語法錯誤,盯緩茄主要凱察表現在詞彙,短語(if
while等)方面,相對容易;運行出現的是語義錯誤,主要表哪則現為運行異常,相對不易檢測
你這就屬於運行異常,建議lz把代碼重新看看

B. 為什麼調試沒問題編譯出來運行就出現發現異常

這個問題比較常見的。 首先又可能是以下蔽埋皮幾點原因: 1:前一個程序沒有關閉,又新建了一個程序。 2:強制關閉液洞此程序宏差,在打開一下VC6.0,把程序復制過去,可以解決 3:你VC6.0安裝程序出現錯誤,文件組缺少一些必要的文件 4:你的程序出現錯誤

C. Java編譯錯誤和運行錯誤有什麼區別 能否深入淺出

編譯出錯差不多就是語法不對,比如你寫String str = 'str';這么寫語法不對編譯就會出錯。運行出錯是指語法沒問題但是邏輯有問題,比如一個方法傳進一個String類型的變數str,方法體中有類似於str.equals("str");的語句,但是傳進的str是個null,那麼那一句就相當於null.equals("str");這肯定會拋空指針異常。
用手機做例子,編譯出錯就是手機在生產的時候零件不對,那就肯定不能出廠。運行出錯就是手機組裝完出廠了,到手了你沒用來打電話,直接拿來砸核桃了,那手機肯定報廢(NOKIA除外)。

D. 編譯時異常和運行時異常怎麼理解,怎麼區分兩者

編譯錯誤,一般是語法上存在問題,編譯過不去; 運行錯誤,是指程序在運行過程中出現錯誤,只能說是程序存在一定的邊界bug; 編譯錯誤一般是指java語法的錯誤,運行錯誤分兩種一種是error還有就是Exception 有的異常是拋出但可繼續執行之後的代碼

E. Java之運行時異常與編譯時異常區別

Java中用2種方法處理異常:

1.在發生異常的地方直接處理;

2.將異常拋給調用者,讓調用者處理。

Java常見的異常:

(1)編譯時異常:Java.lang.Exception

(2)運行期異常:Java.lang.RuntimeException

Java.lang.Exception和Java.lang.Error繼承自Java.lang.Throwable;

Java.lang.RuntimeException繼承自Java.lang.Exception.

編譯時異常: 程序正確,但因為外在的環境條件不滿足引發。例如:用戶錯誤及I/O問題----程序試圖打開一個並不存在的遠程Socket埠。這不是程序本身的邏輯錯誤,而很可能是遠程機器名字錯誤(用戶拼寫錯誤)。對商用軟體系統,程序開發者必須考慮並處理這個問題。Java編譯器強制要求處理這類異常,如果不捕獲這類異常,程序將不能被編譯。

運行期異常: 這意味著程序存在bug,如數組越界,0被除,入參不滿足規范.....這類異常需要更改程序來避免,Java編譯器強制要求處理這類異常。

F. 為什麼編譯沒有錯誤,運行卻有錯誤

編譯沒有錯誤是因為你的程序語法沒有錯誤.
而運行時則有可能出現邏輯錯誤.
比如說C#里最常見的"未將對象引用設置到對象的實例",就是說一個對象並沒有實力化,或者沒有值就去引用了.
再比如連接資料庫,語法正確,但是運行時卻因為SQL未啟動或者連接字元串拼寫錯誤而發生異常.

G. 簡要描述一下編譯期異常和運行時異常

編譯器異常就是你編譯的時候 編譯器報的錯誤,會自動提示;
運行時異常是程序運行的時候發生的異常,比如空指針,超出界限等,可以通過try catch捕捉到的

H. java編譯過程沒有錯誤為什麼運行過程後出現出現錯誤或無法載入主類

java中的錯誤一般分為編譯錯誤或者運行時的錯誤或異常
編譯錯誤一般指的是語法上的錯誤,比如引用未付值的變數,語句後少了分號等等通過編譯器可以檢查出來的錯誤
運行時的錯誤或異常,是指編譯器無法檢查出來在程序中卻又不能正確執行的代碼,比如兩個變數相除,除數為0,或者是你引用了null值等等,面向對象的語言中萬物皆對象,運行時的各種異常或錯誤也是java的類的一部分,你可以參見j2se的api,在java.lang這個包下的Throwable就是所有異常和錯誤的父類,你可以看一看
java在運行出錯時,通常都會在控制台上列印出錯信息,比如
Exception in thread "main" java.lang.NullPointerException
at Test.main(Test.java:6)
那個java.lang.NullPointerException就是異常的名稱,你就可以去API中查看此異常,就知道這個異常是什麼意思了,第二行Test.java:6的意思就是Test.java這個文件第6行報的錯誤

無法載入主類,你是怎麼判斷的,如果你是用命令行啟動,一般情況下看看檢查你的class_path設置的對不對,你運行的class文件有沒有,運行的class文件中有沒有main方法,還有就是引用的其他class文件或jar包在不在classpath的路徑下

祝你好運!

I. 編譯時異常和運行時異常有什麼區別啊

Throwable 是所有 Java 程序中錯誤處理的父類 ,有兩種資類: Error 和 Exception 。 Error :表示由 JVM 所偵測到的無法預期的錯誤,由於這是屬於 JVM 層次的嚴重錯誤 ,導致 JVM 無法繼續執行,因此,這是不可捕捉到的,無法採取任何恢復的操作,頂多隻能顯示錯誤信息。 Exception :表示可恢復的例外,這是可捕捉到的。 Java 提供了兩類主要的異常 :runtime exception 和 checked exception 。 checked 異常也就是我們經常遇到的 IO 異常,以及 SQL 異常都是這種異常。 對於這種異常, JAVA 編譯器強制要求我們必需對出現的這些異常進行 catch 。所以,面對這種異常不管我們是否願意,只能自己去寫一大堆 catch 塊去處理可能的異常。 但是另外一種異常: runtime exception ,也稱運行時異常,我們可以不處理。當出現這樣的異常時,總是由虛擬機 接管。比如:我們從來沒有人去處理過 NullPointerException 異常,它就是運行時異常,並且這種異常還是最常見的異常之一。 出現運行時異常後,系統會把異常一直往上層拋,一直遇到處理代碼。如果沒有處理塊,到最上層,如果是多線程就由 Thread.run() 拋出 ,如果是單線程就被 main() 拋出 。拋出之後,如果是線程,這個線程也就退出了。如果是主程序拋出的異常,那麼這整個程序也就退出了。運行時異常是 Exception 的子類,也有一般異常的特點,是可以被 Catch 塊處理的。只不過往往我們不對他處理罷了。也就是說,你如果不對運行時異常進行處理,那麼出現運行時異常之後,要麼是線程中止,要麼是主程序終止。 如果不想終止,則必須撲捉所有的運行時異常,決不讓這個處理線程退出。隊列裡面出現異常數據了,正常的處理應該是把異常數據舍棄,然後記錄日誌。不應該由於異常數據而影響下面對正常數據的處理。 在這個場景這樣處理可能是一個比較好的應用,但並不代表在所有的場景你都應該如此。如果在其它場景,遇到了一些錯誤,如果退出程序比較好,這時你就可以不太理會運行時異常 ,或者是通過對異常的處理顯式的控製程序退出。 異常處理的目標之一就是為了把程序從異常中恢復出來 。

J. java編譯異常有哪幾個

Exception下除了RuntimeException及其子類以外的所有子類,JDK文檔上說,已知道的直接子類有:

熱點內容
蘋果電話為什麼打不開密碼 發布:2025-07-14 15:33:45 瀏覽:42
安卓如何取消短消息通知 發布:2025-07-14 15:30:54 瀏覽:372
輿情監測演算法 發布:2025-07-14 15:29:19 瀏覽:13
android搜索聯系人 發布:2025-07-14 15:27:34 瀏覽:332
省唄上傳學歷 發布:2025-07-14 15:21:54 瀏覽:633
linux伺服器tomcat 發布:2025-07-14 15:19:41 瀏覽:191
東風風神奕炫max怎麼配置 發布:2025-07-14 15:13:44 瀏覽:746
蘋果安卓不知道到底怎麼選 發布:2025-07-14 15:07:52 瀏覽:925
資料庫spl 發布:2025-07-14 15:05:22 瀏覽:436
手機存儲中照片被刪除了咋辦 發布:2025-07-14 14:57:45 瀏覽:987