Maison > Java > Javacommencer > le corps du texte

Comment gérer les exceptions en Java

王林
Libérer: 2020-07-31 16:11:44
avant
2644 Les gens l'ont consulté

Comment gérer les exceptions en Java

La gestion des exceptions est divisée en gestion passive (si vous ne pouvez pas la gérer vous-même, lancez des lancers à l'endroit où elle est appelée, l'exception n'est pas résolue, juste lancée) et active gestion (capture des exceptions, la capture des exceptions est réalisée via des instructions try-catch ou des instructions try-catch-finally).

(Tutoriel recommandé : Tutoriel d'introduction à Java)

Traitement négatif :

Syntaxe :

public void m1() throws 异常类名1,异常类名2{}
Copier après la connexion

Autoriser la compilation.

Lorsque l'exception levée est une exception non-exécutable (cochée), l'appelant qui appelle cette méthode doit la gérer.

Lorsque l'exception levée est une exception d'exécution (non cochée), elle peut être gérée ou non.

Gestion positive : (capture d'exception)

Attrapez l'exception directement et gérez-la.

Syntaxe :

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

		//当异常产生执行的代码
	}
Copier après la connexion

Le bloc de code catch après essai ne peut en correspondre qu'à un seul avec succès.

Lorsque l'exception déclarée après catch est une classe parent, les exceptions qu'elle peut intercepter sont elle-même + toutes les exceptions de sous-classe (une manifestation du polymorphisme).

Remarque : lorsque le bloc de code catch intercepte une exception, l'exception de sous-classe doit être définie avant l'exception de classe parent, sinon une erreur de compilation se produira.

(Tutoriel vidéo recommandé : Tutoriel vidéo Java )

Enfin le bloc de code : Le code de ce bloc de code sera définitivement exécuté et est souvent utilisé pour fermer des ressources.

	try{
	
	}catch(){
	
	}finally{
		//无论是否产生异常,一定会去执行的代码
	}
Copier après la connexion

Remarque : Ne définissez pas d'instruction return dans le bloc de code final.

Exemple :

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
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:csdn.net
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal