首页 > 其他 > 详细

异常处理-动手动脑

时间:2019-10-29 23:44:33      阅读:89      评论:0      收藏:0      [点我收藏+]

1.请阅读并运行AboutException.java示例,然后通过后面的几页PPT了解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");
     }
		
  }
}

 技术分享图片

 

 

 技术分享图片

 

 

 Java中的异常捕获语句

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

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

       finally最后都会执行一次。

使用Java异常处理机制

    1.     把可能会发生错误的代码放进try语句块中。
    2.     当程序检测到出现了一个错误时会抛出一个异常对象。异常处理代码会捕获并处理这个错误。
    3.     catch语句块中的代码用于处理错误。
    4.     当异常发生时,程序控制流程由try语句块跳转到catch语句块。
    5.     不管是否有异常发生,finally语句块中的语句始终保证被执行。
    6.     如果没有提供合适的异常处理代码,JVM将会结束掉整个应用程序。

2.多层的异常捕获

public class CatchWho2 { 
    public static void main(String[] args) { 
        try {
            	try { 
                	throw new ArrayIndexOutOfBoundsException(); 
            	} 
            	catch(ArithmeticException e) { 
                	System.out.println( "ArrayIndexOutOfBoundsException" + "/内层try-catch"); 
            	}
            throw new ArithmeticException(); 
        } 
        catch(ArithmeticException e) { 
            System.out.println("发生ArithmeticException"); 
        } 
        catch(ArrayIndexOutOfBoundsException e) { 
            System.out.println( "ArrayIndexOutOfBoundsException" + "/外层try-catch"); 
        } 
    } 
}

  技术分享图片

 

 当有多个嵌套的try…catch…finally时,要特别注意finally的执行时机。

 

异常处理-动手动脑

原文:https://www.cnblogs.com/zwx655/p/11761819.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!