Heim > Java > javaLernprogramm > Eine Übersicht über Ausnahmen in Java

Eine Übersicht über Ausnahmen in Java

王林
Freigeben: 2019-11-29 15:18:43
nach vorne
2581 Leute haben es durchsucht

Eine Übersicht über Ausnahmen in Java

1. Was ist eine Ausnahme?

Eine Ausnahme ist ein abnormales Phänomen, das während der Ausführung des Programms auftritt.

try: Wickeln Sie den Code dort ein, wo Ausnahmen auftreten können. Wenn eine Ausnahme auftritt, lösen Sie die Ausnahme aus.

catch: Erfassen Sie die Ausnahme und behandeln Sie sie

finally: Wird unabhängig davon ausgeführt, ob eine Ausnahme auftritt

throw: Manuell eine Ausnahme auslösen

throws: Ausnahmen für jede aufgerufene Methode definieren

Online-Lernvideo Empfehlungen:Java-Online-Video

2. Gründe für Ausnahmen

Benutzereingabefehler;

Umweltfaktoren;

Der Ausnahmemechanismus gewährleistet die Robustheit des Programms!

3. Klassifizierung von Ausnahmen

Null-Referenz-Ausnahme

NullPointerExceptionSubskript außerhalb der Grenzen-Ausnahme

Fehler und es hängt mit der Kompilierungsumgebung zusammen, es handelt sich um einen internen Fehler der Java-Laufzeitumgebung und einen Fehler bei der Erschöpfung der Ressourcen. Sehr schwer zu beheben und von Benutzern wird nicht erwartet, dass sie das Problem beheben. IndexOutOfBoundException

4. Ausnahmeinformationen abrufen

Wenn im Programm eine Ausnahme auftritt, wird das Programm direkt vom Try- bis zum Catch-Anweisungsblock ausgeführt und nicht fortgesetzt hier ausführen.

public class text3 {
    public static void main(String[] args) {
		System.out.println("main开始执行");
		text3 a=new text3();
		a.text();
		System.out.println("main执行结束");
	}
    public void text() {
    	int a;
    	try {
    		 a=2/0;
    		System.out.println(a);
    	}catch(ArithmeticException e){
    		System.out.println("程序发生了异常");
    	}
    }
}
Nach dem Login kopieren

Das Programm wird nicht unterbrochen, nachdem die Ausnahme abgefangen wurde

public class text3 {
    public static void main(String[] args) {
		System.out.println("main开始执行");
		text3 a=new text3();
		a.text();
		System.out.println("main执行结束");
	}
    public void text() {
    	int a;
    	//try {
    		 a=2/0;
    		System.out.println(a);
    	//}catch(ArithmeticException e){
    		//System.out.println("程序发生了异常");
    	//}
    }
}
Nach dem Login kopieren

Konsolenergebnis:


Die Ausnahme ist nicht vorhanden wird von selbst gehandhabt, ist aber eine Aussage. Eine Übersicht über Ausnahmen in Java

Ausnahmeanweisung: Dies bedeutet, dass eine Methode die von ihr generierte Ausnahme nicht behandelt, sondern sie an die aufrufende Hierarchie weiterleitet. Wer auch immer diese Methode aufruft, wird sie behandeln.

5. Ausnahmen manuell auslösen

Ausnahme auslösen; Der Parameter Ausnahme stellt das auszulösende Ausnahmeobjekt dar, das eine Unterklasse der auslösbaren Klasse ist und nur eines sein kann .

public void text1() throws ArithmeticException{
		
	}
	
	public static void main(String[] args) {
		Text t=new Text();
		try {
			t.text();
		} catch (Exception e) {
			// TODO Auto-generated catch block
			System.out.println(e.getMessage());
		}
	}
	public void text() throws Exception {
		//手动抛出异常
		throw new Exception("这是手动抛出来的");
	}
}
Nach dem Login kopieren

6. Verschachtelte Verwendung von Try Catch Finally

public class Textthrow {
     
public static void main(String[] args) {
	double a=Math.random();
    try {
   	 if(a>0.5) {
   		 System.out.println(a+"程序不报错");
   	 }
   	 else {
   		 throw new Exception();
   	 }
    }catch(Exception e) {
   	 System.out.println("这是外层捕获的对象"+e);
   	 try {
   		 a=1/0;
   	 }catch(ArithmeticException e1) {
   		 System.out.println("这是内层捕获的对象"+e1);
   		 
   	 }finally {
   		 System.out.println("这是内层的finally块");
   	 }
    }finally {
   	 System.out.println("这是外层的finally块 ");
    }
}
}
Nach dem Login kopieren
7. Ausnahmekette

Definition: zwei oder mehrere unterschiedlich Ausnahmen treten im selben Programm auf und es kommt zu einer verschachtelten Auslösung, die als Ausnahmekette bezeichnet wird.

public class ExceptionChainText {
      public static void main(String[] args) {
		Calculator c=new Calculator();
		try {
			c.chufa(1, 0);
		}catch(NumberCalculateExcetption e) {
			e.printStackTrace();
			System.out.println("错误原因"+e);
		}
	}
}
class Calculator{
	public int chufa(int i,int j) throws NumberCalculateExcetption {
		if(j==0) {
			NumberCalculateExcetption e = new
					NumberCalculateExcetption ("计算错误");
			NegativeNumberException e1=	new
					NegativeNumberException("除数不能为0");
		 e.initCause(e1);//由e1引起的异常
		 throw e;
		}
		return 0;
	}
}
class NegativeNumberException extends Exception{
	public NegativeNumberException(String msg) {
		super(msg);
	}
}
class NumberCalculateExcetption extends Exception{
	public NumberCalculateExcetption(String msg) {
		super(msg);
	}
}
Nach dem Login kopieren

Empfohlene verwandte Artikel und Tutorials:
Java-Einstiegsprogramm

Das obige ist der detaillierte Inhalt vonEine Übersicht über Ausnahmen in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage