Javaで例外を処理する方法

王林
リリース: 2020-07-31 16:11:44
転載
2642 人が閲覧しました

Javaで例外を処理する方法

例外処理は、パッシブ処理 (自分で処理できない場合は、呼び出された場所でスローをスローします。例外は解決されず、スローされるだけです) とアクティブな処理に分けられます。処理 (例外のキャッチ、例外のキャッチは try-catch ステートメントまたは try-catch-finally ステートメントによって実現されます)。

(推奨チュートリアル: java 入門チュートリアル)

ネガティブ処理:

構文:

public void m1() throws 异常类名1,异常类名2{}
ログイン後にコピー

コンパイルを通過させます。

スローされた例外が非実行時 (チェック済み) 例外である場合、このメソッドを呼び出す呼び出し元はそれを処理する必要があります。

スローされた例外が実行時 (チェックされていない) 例外である場合、それは処理できるかどうかが決まります。

アクティブな処理: (例外キャッチ)

例外を直接キャッチして処理します。

構文:

try{
	  //异常代码
	}catch(异常类名 引用名){  

		//当异常产生执行的代码
	}
ログイン後にコピー

try の後の catch コード ブロックは、1 つのみと正常に一致します。

catch の後に宣言された例外が親クラスの場合、キャッチできる例外はすべてそれ自体のサブクラス例外です (ポリモーフィズムの現れ)。

注: catch コード ブロックが例外をキャッチするときは、親クラスの例外の前にサブクラスの例外を定義する必要があります。そうしないと、コンパイル エラーが発生します。

(ビデオ チュートリアルの推奨: java ビデオ チュートリアル)

最後にコード ブロック: このコード ブロック内のコードは確実に実行され、リソースを閉じるためによく使用されます。

	try{
	
	}catch(){
	
	}finally{
		//无论是否产生异常,一定会去执行的代码
	}
ログイン後にコピー

注:finally コード ブロック内で return ステートメントを定義しないでください。

例:

package work;

import java.io.EOFException;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.sql.SQLException;
import java.util.Scanner;

/**
 * @author 超伟
 * @date 2019年5月13日  
 * @version 1.0.0  
 */
public class t4 {
	public static void main(String[] args) {
		System.out.println("main1");
		int n;
		Scanner sc = new Scanner(System.in);
		n = sc.nextInt();
		ma(n);
		System.out.println("main2");
	}
	public static void ma(int n){
		try {
			System.out.println("m1");
			mb(n);
			System.out.println("m2");
		} catch (EOFException e) {
			//e.printStackTrace();
			System.out.println("EOFException    ");
		} catch (IOException e) {
			System.out.println("IOException e111");
		}catch (SQLException e) {
			System.out.println("SQLException");
		}catch (Exception e) {
			System.out.println("Exception");
		}finally{
			System.out.println("in finally");
		}
	}
	
	public static void mb(int n) throws Exception {
		System.out.println("mb1");
		if (n==1) {
			throw new EOFException();
		}
		if (n==2) {
			throw new FileNotFoundException();
		}
		if (n==3) {
			throw new SQLException();
		}
		if (n==4) {
			throw new NullPointerException();
		}
		System.out.println("mb2");
	}	
}
程序运行结果为:
main1
1
m1
mb1
EOFException    
in finally
main2
ログイン後にコピー

以上がJavaで例外を処理する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:csdn.net
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート