动手动脑:java异常处理基础知识

java异常处理基础知识

import javax.swing.*;

class AboutException {
   public static void main(String[] a) 
   {
      int i=1, j=0, k;
      k=i/j;


	try
	{
		
		k = i/j;    // Causes division-by-zero exception
		//throw new Exception("Hello.Exception!");
	}
	
	catch ( ArithmeticException e)
	{
		System.out.println("被0除.  "+ e.getMessage());
	}
	
	catch (Exception e)
	{
		if (e instanceof ArithmeticException)
			System.out.println("被0除");
		else
		{  
			System.out.println(e.getMessage());
			
		}
	}

	
	finally
     {
     		JOptionPane.showConfirmDialog(null,"OK");
     }
		
  }
}

  

异常捕获语句

Try{
			//可能发生运行错误的代码;
		}
		catch(异常类型     异常对象引用){
			//用于处理异常的代码
		}
		finally{
			//用于“善后” 的代码
		}

  

 

Java 中所有可捕获的异常都派生自 Exception 类

异常处理机制:

  把可能会发生错误的代码放进try语句块中。

  当程序检测到出现了一个错误时会抛出一个异常对象。异常处理代码会捕获并处理这个错误。 catch语句块中的代码用于处理错误。

  当异常发生时,程序控制流程由try语句块跳转到catch语句块。

  不管是否有异常发生,finally语句块中的语句始终保证被执行。

  如果没有提供合适的异常处理代码,JVM将会结束掉整个应用程序。

Throwable类有两个直接子类:

Exception:出现的问题是可以被捕获的;

Error:系统错误,通常由JVM处理。

可捕获的异常又可以分为两类:

(1)Check异常:直接派生自Exception的异常类,必须被捕获或再次声明抛出

(2)Runtime异常:派生自RuntimeException的异常类。使用throw语句可以随时抛出这种异常对象:

posted @ 2022-10-24 16:58  ashuai~  阅读(23)  评论(0)    收藏  举报