導航:首頁 > 編程語言 > java常見的錯誤代碼

java常見的錯誤代碼

發布時間:2021-12-05 02:14:17

⑴ 常見java運行時異常有哪些

1,java.lang.NullPointerException

這個異常的解釋是 "程序遇上了空指針 ",簡單地說就是調用了未經初始化的對象或者是不存在的對象,這個錯誤經常出現在創建圖片,調用數組這些操作中,比如圖片未經初始化,或者圖片創建時的路徑錯誤等等。

2,java.lang.ClassNotFoundException

異常的解釋是"指定的類不存在",這里主要考慮一下類的名稱和路徑是否正確即可

3,java.lang.

這個異常的解釋是"數組下標越界",現在程序中大多都有對數組的操作,因此在調用數組的時候一定要認真檢查,看自己調用的下標是不是超出了數組的范圍,一般來說,顯示(即直接用常數當下標)調用不太容易出這樣的錯,但隱式(即用變數表示下標)調用就經常出錯了.

4,java.lang.NoSuchMethodError

方法不存在錯誤。當應用試圖調用某類的某個方法,而該類的定義中沒有該方法的定義時拋出該錯誤。

5,java.lang.IndexOutOfBoundsException

索引越界異常。當訪問某個序列的索引值小於0或大於等於序列大小時,拋出該異常。

6,java.lang.NumberFormatException

數字格式異常。當試圖將一個String轉換為指定的數字類型,而該字元串確不滿足數字類型要求的格式時,拋出該異常。

7,java.sql.SQLException

Sql語句執行異常

8,java.io.IOException

輸入輸出異常

9,java.lang.IllegalArgumentException

方法參數錯誤

10java.lang.IllegalAccessException

無訪問許可權異常

(1)java常見的錯誤代碼擴展閱讀:

Java技術應用領域:

1、Android應用

許多的 Android應用都是Java程序員開發者開發。雖然 Android運用了不同的JVM以及不同的封裝方式,但是代碼還是用Java語言所編寫。相當一部分的手機中都支持JAVA游戲,這就使很多非編程人員都認識了JAVA。

2、在金融業應用的伺服器程序

Java在金融服務業的應用非常廣泛,很多第三方交易系統、銀行、金融機構都選擇用Java開發,因為相對而言,Java較安全 。大型跨國投資銀行用Java來編寫前台和後台的電子交易系統,結算和確認系統,數據處理項目以及其他項目。

3、網站

Java 在電子商務領域以及網站開發領域占據了一定的席位。開發人員可以運用許多不同的框架來創建web項目,SpringMVC,Struts2.0以及frameworks。即使是簡單的 servlet,jsp和以struts為基礎的網站在政府項目中也經常被用到。例如醫療救護、保險、教育、國防以及其他的不同部門網站都是以Java為基礎來開發的。

4、嵌入式領域

Java在嵌入式領域發展空間很大。在這個平台上,只需130KB就能夠使用Java技術(在智能卡或者感測器上)。

5、大數據技術

Hadoop以及其他大數據處理技術很多都是用Java,例如Apache的基於Java的HBase和Accumulo以及 ElasticSearchas。

6、高頻交易的空間

Java平台提高了這個平台的特性和即使編譯,他同時也能夠像 C++ 一樣傳遞數據。正是由於這個原因,Java成為的程序員編寫交易平台的語言,因為雖然性能不比C++,但開發人員可以避開安全性,可移植性和可維護性等問題。

7、科學應用

Java在科學應用中是很好選擇,包括自然語言處理。最主要的原因是因為Java比C++或者其他語言相對其安全性、便攜性、可維護性以及其他高級語言的並發性更好。

⑵ java中常見的幾種異常

1、空指針異常類:NullPointerException

調用了未經初始化的對象或者是不存在的對象。經常出現在創建圖片,調用數組這些操作中,比如圖片未經初始化,或者圖片創建時的路徑錯誤等等。對數組操作中出現空指針, 即把數組的初始化和數組元素的初始化混淆起來了。

數組的初始化是對數組分配需要的空間,而初始化後的數組,其中的元素並沒有實例化, 依然是空的,所以還需要對每個元素都進行初始化(如果要調用的話)。

2、數據類型轉換異常:java.lang.ClassCastException

當試圖將對某個對象強制執行向下轉型,但該對象又不可轉換又不可轉換為其子類的實例時將引發該異常,如下列代碼。

Object obj=newInteger(0);

String str = obj;

3、沒有訪問許可權:java.lang.IllegalAccessException

當應用程序要調用一個類,但當前的方法即沒有對該類的訪問許可權便會出現這個異常。對程序中用了Package的情況下要注意這個異常。

4、方法的參數錯誤:java.lang.IllegalArgumentException

比如g.setColor(int red,int green,int blue)這個方法中的三個值,如果有超過255的也會出現這個異常,因此一旦發現這個異常,我們要做的,就是趕緊去檢查一下方法調用中的參數傳遞是不是出現了錯誤。

5、數組下標越界異常:java.lang.IndexOutOfBoundsException

查看調用的數組或者字元串的下標值是不是超出了數組的范圍,一般來說,顯示(即直接用常數當下標)調用不太容易出這樣的錯,但隱式(即用變數表示下標)調用就經常出錯了。

還有一種情況,是程序中定義的數組的長度是通過某些特定方法決定的,不是事先聲明的,這個時候先查看一下數組的length,以免出現這個異常。

6、文件已結束異常:EOFException

當程序在輸入的過程中遇到文件或流的結尾時,引發異常。因此該異常用於檢查是否達到文件或流的結尾

7、文件未找到異常:FileNotFoundException

當程序試圖打開一個不存在的文件進行讀寫時將會引發該異常。該異常由FileInputStream,FileOutputStream,RandomAccessFile的構造器聲明拋出,即使被操作的文件存在,但是由於某些原因不可訪問,比如打開一個只讀文件進行寫入,這些構造方法仍然會引發異常。

8、字元串轉換為數字異常:NumberFormatException

當試圖將一個String轉換為指定的數字類型,而該字元串確不滿足數字類型要求的格式時,拋出該異常.如現在講字元型的數據「123456」轉換為數值型數據時,是允許的。

但是如果字元型數據中包含了非數字型的字元,如123#56,此時轉換為數值型時就會出現異常。系統就會捕捉到這個異常,並進行處理。

9、指定的類不存在:java.lang.ClassNotFoundException

這里主要考慮一下類的名稱和路徑是否正確即可,通常都是程序試圖通過字元串來載入某個類時可能引發異常。比如:調用Class.forName;或者調用ClassLoad的finaSystemClass;或者LoadClass;

10、實例化異常:java.lang.InstantiationException

當試圖通過Class的newInstance方法創建某個類的實例,但程序無法通過該構造器來創建該對象時引發。Class對象表示一個抽象類,介面,數組類,基本類型 。該Class表示的類沒有對應的構造器。

⑶ Java編程:常見的幾個錯誤

Java源文件可以包含多個類,但只能有一個被定義為公共的最高級的類,同時源文件的名稱必須與這個公共類名相同。
靜態方法不能被覆蓋,但如果它不是決定性的則可以被隱藏。
在字串池中創建的對象不能被全局編錄控制,除非它被JAVA虛擬機所卸載。
只有方法和代碼塊能被同步標記。
本地類不能存取方法中的內部類。
-0.0 == 0.0是正確的。
Collection是一個介面,Collections是Collection的一個輔助類,提供一些Collection的操作。

⑷ Java語言中常見的異常類型有哪些

作為一隻敬業的程序員,就是不能接受我的編程出現!可見我們對bug是如此的深惡痛覺!它已成為我們職業生涯中的攔路虎,所以今天精心為大家總結一下Java中常見的幾種異常,望大家多多注意。

1、java.lang.NullPointerException(空指針異常)
調用了未經初始化的對象或者是不存在的對象。經常出現在創建圖片,調用數組這些操作中,比如圖片未經初始化,或者圖片創建時的路徑錯誤等等。對數組操作中出現空指針, 即把數組的初始化和數組元素的初始化混淆起來了。數組的初始化是對數組分配需要的空間,而初始化後的數組,其中的元素並沒有實例化, 依然是空的,所以還需要對每個元素都進行初始化(如果要調用的話)。
2、 java.lang.ClassNotFoundException指定的類不存在
這里主要考慮一下類的名稱和路徑是否正確即可,通常都是程序試圖通過字元串來載入某個類時可能引發異常。比如:調用Class.forName();或者調用ClassLoad的finaSystemClass();或者LoadClass();
3、 java.lang.NumberFormatException字元串轉換為數字異常
當試圖將一個String轉換為指定的數字類型,而該字元串確不滿足數字類型要求的格式時,拋出該異常.如現在講字元型的數據「123456」轉換為數值型數據時,是允許的。但是如果字元型數據中包含了非數字型的字元,如123#56,此時轉換為數值型時就會出現異常。系統就會捕捉到這個異常,並進行處理。
4、java.lang.IndexOutOfBoundsException數組下標越界異常
查看調用的數組或者字元串的下標值是不是超出了數組的范圍,一般來說,顯示(即直接用常數當下標)調用不太容易出這樣的錯,但隱式(即用變數表示下標)調用就經常出錯了,還有一種情況,是程序中定義的數組的長度是通過某些特定方法決定的,不是事先聲明的,這個時候先查看一下數組的length,以免出現這個異常。
5、java.lang.IllegalArgumentException方法的參數錯誤
比如g.setColor(int red,int green,int blue)這個方法中的三個值,如果有超過255的也會出現這個異常,因此一旦發現這個異常,我們要做的,就是趕緊去檢查一下方法調用中的參數傳遞是不是出現了錯誤。
6、java.lang.IllegalAccessException沒有訪問許可權
當應用程序要調用一個類,但當前的方法即沒有對該類的訪問許可權便會出現這個異常。對程序中用了Package的情況下要注意這個異常。
7、java.lang.ArithmeticException數學運算異常
當算術運算中出現了除以零這樣的運算就會出這樣的異常。
8、java.lang.ClassCastException數據類型轉換異常
當試圖將對某個對象強制執行向下轉型,但該對象又不可轉換又不可轉換為其子類的實例時將引發該異常,如下列代碼。
Object obj = new Integer(0);
String str = obj;
9、 java.lang.FileNotFoundException文件未找到異常
當程序試圖打開一個不存在的文件進行讀寫時將會引發該異常。該異常由FileInputStream,FileOutputStream,RandomAccessFile的構造器聲明拋出,即使被操作的文件存在,但是由於某些原因不可訪問,比如打開一個只讀文件進行寫入,這些構造方法仍然會引發異常。
10、java.lang.ArrayStoreException數組存儲異常
當試圖將類型不兼容類型的對象存入一個Object[]數組時將引發異常,如
Object[] obj = new String[3]
obj[0] = new Integer(0);
11、java.lang.NoSuchMethodException方法不存在異常
當程序試圖通過反射來創建對象,訪問(修改或讀取)某個方法,但是該方法不存在就會引發異常。
12、 java.lang.NoSuchFiledException方法不存在異常
當程序試圖通過反射來創建對象,訪問(修改或讀取)某個filed,但是該filed不存在就會引發異常。
13、 java.lang.EOFException文件已結束異常
當程序在輸入的過程中遇到文件或流的結尾時,引發異常。因此該異常用於檢查是否達到文件或流的結尾
14、java.lang.InstantiationException實例化異常
當試圖通過Class的newInstance()方法創建某個類的實例,但程序無法通過該構造器來創建該對象時引發。Class對象表示一個抽象類,介面,數組類,基本類型 。該Class表示的類沒有對應的構造器。
15、java.lang.InterruptedException被中止異常
當某個線程處於長時間的等待、休眠或其他暫停狀態,而此時其他的線程通過Thread的interrupt方法終止該線程時拋出該異常。
16、java.lang.CloneNotSupportedException 不支持克隆異常
當沒有實現Cloneable介面或者不支持克隆方法時,調用其clone()方法則拋出該異常。
17、java.lang.OutOfMemoryException 內存不足錯誤
當可用內存不足以讓Java虛擬機分配給一個對象時拋出該錯誤。
18、java.lang.NoClassDefFoundException 未找到類定義錯誤
當Java虛擬機或者類裝載器試圖實例化某個類,而找不到該類的定義時拋出該錯誤。
違背安全原則異常:SecturityException
操作資料庫異常:SQLException
輸入輸出異常:IOException
通信異常:SocketException
以上便是Java常見的幾種異常,希望各位同學都能編譯出完美的代碼,笑隱竹林中!編碼bug,江湖永無相見!

⑸ java中常見的異常類

從異常類的繼承架構圖中可以看出:Exception 類擴展出數個子類,其中 IOException、RunntimeException 是較常用的兩種。

習慣上將 Error 與 Exception 類統稱為異常類,但這兩者本質上還是有不同的。Error 類專門用來處理嚴重影響程序運行的錯誤,可是通常程序設計者不會設計程序代碼去捕捉這種錯誤,其原因在於即使捕捉到它,也無法給予適當的處理,如 JAVA 虛擬機出錯就屬於一種 Error。

不同於 Error 類,Exception 類包含了一般性的異常,這些異常通常在捕捉到之後便可做妥善的處理,以確保程序繼續運行,如 TestException7_2 里所捕捉到的 就是屬於這種異常。

RunntimeException 即使不編寫異常處理的程序代碼,依然可以編譯成功,而這種異常必須是在程序運行時才有可能發生,例如:數組的索引值超出了范圍。

與RunntimeException 不同的是,IOException 一定要編寫異常處理的程序代碼才行,它通常用來處理與輸入/輸出相關的操作,如文件的訪問、網路的連接等。

當異常發生時,發生異常的語句代碼會拋出一個異常類的實例化對象,之後此對象與 catch 語句中的類的類型進行匹配,然後在相應的 catch 中進行處理。

(5)java常見的錯誤代碼擴展閱讀:

Java異常的分類:

Java標准褲內建了一些通用的異常,這些類以Throwable為頂層父類。

Throwable又派生出Error類和Exception類。

錯誤:Error類以及他的子類的實例,代表了JVM本身的錯誤。錯誤不能被程序員通過代碼處理,Error很少出現。因此,程序員應該關注Exception為父類的分支下的各種異常類。

異常:Exception以及他的子類,代表程序運行時發送的各種不期望發生的事件。可以被Java異常處理機制使用,是異常處理的核心。


參考資料:網路-異常

⑹ java 程序中的三種錯誤類型分別是什麼

程序中可能有三種錯誤:語法錯誤;運行時錯誤;語義錯誤。

一、語句的語法必須是正確的,才能被計算機控制。否則,將中斷執行進程,並返回錯誤消息。語法是指程序語句的組成。遵守語言規則。例如,下列語句在語法上是正確的:> > >,a = b - c。

二、它的意思是把b-c賦給變數a,如果你把這個表達式寫成「b-c =。」A「在這種形式中,它是錯誤的,因為它不符合語法,而表達「b-c」是行不通的。

三、這需要百分之百的准確性。這是一個錯誤,並且不可能執行您的程序。語法錯誤更容易找到。

和消除。當你開始學習編程時,你需要熟悉語法和語法錯誤。可能會有很多錯誤,隨著經驗的增長,它會減少一點,即使它會減少,你也可以。找到並改正它們。

四、底部是由人類為我們使用的工具設計的。這是電視和汽車的本質。它是一樣的。限於目前計算機硬體和軟體的理論水平,工業生產用水。甚至是用戶的水平等等一些內部的外部因素,你認為,它不能。不對嗎?程序越復雜,出現異常的可能性就越大。有許多類型的異常,例如內存。

五、任何零的除法都有可能引起異常。特殊的異常是用Python設計的。減少錯誤的影響。即使存在語義錯誤,程序也可以正常運行,並且不會出現錯誤。信息,但結果與我們預期的大不相同。然後程序做了別的事情。

⑺ Java編程中常見的錯誤有哪些

相信作為程序員的我們在對程序進行編譯過程中經常會遇到錯誤,或者在運行過程中出現錯誤,在這里主要跟大家談談經常遇到的一些異常與錯誤,以及解決辦法。

異常是指程序在編譯或運行過程出現的錯誤。

在java.lang包中Throwable包含了所有的異常。

Error (錯誤) 和Exception(異常)

(1)Error(錯誤)

一旦發生無法修復,但可以避免發生。

常見錯誤類:

IOError:I/O錯誤,當發生嚴重的I/O錯誤時,拋出此錯誤。
VirtualMachineError:虛擬機錯誤,當 Java 虛擬機崩潰或用盡了它繼續操作所需的資源時,拋出該錯誤。

StackOverflowError:棧內存滿了,當應用程序遞歸太深而發生堆棧溢出時,拋出該錯誤。

OutofMemoryError:堆內存滿了,因為內存溢出或沒有可用的內存提供給垃圾回收器時,Java 虛擬機無法分配一個對象,這時拋出該異常。

以上是一些常見的錯誤,在Error類中還有一些別的錯誤(參照文件Java.lang.Throwable.Error).

(2)Exception(異常)

一旦發生,可以捕獲並處理,不會導致程序終止,有時可以避免有時無法避免。

異常的分類:

1.編譯時異常(需要強制處理) 2.運行時異常(不需要強制處理)

常見的異常有:

IOException:輸入輸出流異常
FileNotFoundException:文件找不到的異常
ClassNotFoundException:類找不到的異常
DataFormatException:數據格式化異常
NoSuchFieldException:沒有匹配的屬性異常
NoSuchMethodException:沒有匹配的方法異常

SQLException:資料庫操作異常
TimeoutException:執行超時異常

常見的運行時異常:

RuntimeException:運行時異常
NullPointerException:空指針異常

:數組越界異

ClassCastException:類型轉換異常
IllegalArgumentException:非法的參數異常
InputMismatchException:輸入不匹配

以上是常見的一些異常,另外還有別的異常,參見文件:Java.lang.Throwable.Exception

既然我們常常會遇到一些異常,那我們如何來處理這些異常就是一個急需解決的事情。

(1) 如何處理編譯時異常?

方法一:將需要處理的代碼塊放在一個try...catch...中
try{
//需要處理異常的代碼
}catch(XXXException ef){
ef.printStackTrace();
}

我們方法一就是要將我們不確定的代碼放入try......catch中,先進行try一下,如果沒有異常,則不會觸發catch,沒有輸出,一旦出現異常,那麼catch就會工作,在catch中捕獲異常信息,根據異常信息進行補救措施。

如以下代碼:

從結果可以看出,我們在輸入數據的時候出現錯誤,這樣通過自定義異常能夠讓我們更直接快速的找到運行或編譯時的異常。

在上述中我們分別提到了三種throw,分別是Throwable,Throws以及throw,那麼到底三者有什麼區別?

Throwable:是指在在Java.lang包中的一個類,其包含了所有的異常和錯誤,其中類Error和Exception 是它

的子類。

Thows:是指在解決編譯時異常,將方法中異常拋給上一級,在方法後面要加Throw Exception來進行拋。

throw:是指在自定義異常時,如果方法出現異常,那麼將作為引用方法的對象拋出。即拋出異常。

⑻ JAVA代碼錯誤提示

在你的InputTest類名上引入這個找不到的類名,它就不會找不到符號了。變成:

import java.util.Scanner;
public class InputTest{...
要記住幾點:

1、你使用了別的類,都是要 import 進來的。
2、java.lang 這個包是默認引入的,不需要顯式地寫 import java.lang.* 。
3、如果引入同一個包下面的多個類,可以用 「*」 代替所有類名,如:「import java.util.*;」 ,這樣就把 util 包下的所有類都引入了,寫到這個包裡面的類名,都不會出現找不到符號的情況。
4、「*」 只是代表了包下面的類名,不代表下面其它包名,如果包里還有包,就要另外寫一句引入。
5、如果你引入的多個包裡面有相同類名的,下面寫到的類名就要連帶它所在的包名也寫上,才能區分使用的是那個類,如「java.util.Scanner in = new java.util.Scanner(System.in);」
這樣應該都明白了吧?

⑼ Java編程中 常見的異常有哪幾種

相信作為程序員的我們在對程序進行編譯過程中經常會遇到錯誤,或者在運行過程中出現錯誤,在這里主要跟大家談談經常遇到的一些異常與錯誤,以及解決辦法。

異常是指程序在編譯或運行過程出現的錯誤。

在java.lang包中Throwable包含了所有的異常。

Error (錯誤) 和Exception(異常)

(1)Error(錯誤)

一旦發生無法修復,但可以避免發生。

常見錯誤類:

IOError:I/O錯誤,當發生嚴重的I/O錯誤時,拋出此錯誤。
VirtualMachineError:虛擬機錯誤,當 Java 虛擬機崩潰或用盡了它繼續操作所需的資源時,拋出該錯誤。

StackOverflowError:棧內存滿了,當應用程序遞歸太深而發生堆棧溢出時,拋出該錯誤。

OutofMemoryError:堆內存滿了,因為內存溢出或沒有可用的內存提供給垃圾回收器時,Java 虛擬機無法分配一個對象,這時拋出該異常。

以上是一些常見的錯誤,在Error類中還有一些別的錯誤(參照文件Java.lang.Throwable.Error).

(2)Exception(異常)

一旦發生,可以捕獲並處理,不會導致程序終止,有時可以避免有時無法避免。

異常的分類:

1.編譯時異常(需要強制處理) 2.運行時異常(不需要強制處理)

常見的異常有:

IOException:輸入輸出流異常
FileNotFoundException:文件找不到的異常
ClassNotFoundException:類找不到的異常
DataFormatException:數據格式化異常
NoSuchFieldException:沒有匹配的屬性異常
NoSuchMethodException:沒有匹配的方法異常

SQLException:資料庫操作異常
TimeoutException:執行超時異常

常見的運行時異常:

RuntimeException:運行時異常
NullPointerException:空指針異常

:數組越界異

ClassCastException:類型轉換異常
IllegalArgumentException:非法的參數異常
InputMismatchException:輸入不匹配

以上是常見的一些異常,另外還有別的異常,參見文件:Java.lang.Throwable.Exception

既然我們常常會遇到一些異常,那我們如何來處理這些異常就是一個急需解決的事情。

(1) 如何處理編譯時異常?

方法一:將需要處理的代碼塊放在一個try...catch...中
try{
//需要處理異常的代碼
}catch(XXXException ef){
ef.printStackTrace();
}

我們方法一就是要將我們不確定的代碼放入try......catch中,先進行try一下,如果沒有異常,則不會觸發catch,沒有輸出,一旦出現異常,那麼catch就會工作,在catch中捕獲異常信息,根據異常信息進行補救措施。

如以下代碼:

從結果可以看出,我們在輸入數據的時候出現錯誤,這樣通過自定義異常能夠讓我們更直接快速的找到運行或編譯時的異常。

在上述中我們分別提到了三種throw,分別是Throwable,Throws以及throw,那麼到底三者有什麼區別?

Throwable:是指在在Java.lang包中的一個類,其包含了所有的異常和錯誤,其中類Error和Exception 是它

的子類。

Thows:是指在解決編譯時異常,將方法中異常拋給上一級,在方法後面要加Throw Exception來進行拋。

throw:是指在自定義異常時,如果方法出現異常,那麼將作為引用方法的對象拋出。即拋出異常。

希望對您有所幫助!~

⑽ JAVA編程中常見的錯誤有哪些

錯誤就是error,它不同於異常。有時候程序不發生異常是不會出問題的,但有錯誤一定有問題。專
常見的錯屬誤:編寫錯誤,語句錯誤---這兩個編譯器會提醒,也就是常用的eclipse;
邏輯錯誤,這個要看你自己的邏輯思維了。
潛在錯誤,也就是編寫語句邏輯都沒有問題,但jvm檢測有問題,就需要你自己找了,通常潛在錯誤都有邏輯問題。

閱讀全文

與java常見的錯誤代碼相關的資料

熱點內容
flashcs5實用案例教程 瀏覽:850
百度貼吧密碼模板 瀏覽:974
食堂管理體系文件包括內容 瀏覽:290
飢荒目錄在哪個文件夾 瀏覽:52
烏魯木齊在哪裡學習編程 瀏覽:431
c語言創建文件夾 瀏覽:874
韓國講述養父與雙胞胎 瀏覽:808
西班牙言情電影 瀏覽:85
a標簽如何直接下載一個文件 瀏覽:777
多女主多鼎爐的小說 瀏覽:531
洪金寶元華元彪越南電影 瀏覽:340
win10ghost好么 瀏覽:207
java怎麼添加滾動條 瀏覽:946
qt生成excel文件 瀏覽:374
如何徹底清除用戶數據 瀏覽:590
假期去看了一場電影英文翻譯 瀏覽:171
香水在哪個網站買 瀏覽:481
學習編程需要掌握哪些英語 瀏覽:510
win10投射到安卓平板 瀏覽:973
qq密碼手機怎麼解除 瀏覽:548

友情鏈接