zoukankan      html  css  js  c++  java
  • java异常复习

    1、检查性异常:编译时会发现的异常。自定义检查性异常要继承Excepiton。

    2、非检查性异常:运行时产生的异常。RuntimeExcepiton及其子类,自定义非检查性异常要继承RuntimeExcepiton。

    3、捕获异常:如果有可能的异常产生,一般编译器会自己给你加上try/catch框的。

    try{
    			
    			//可能产生异常的语句
    			
    		}catch(Exception e){
    			
    			//捕获异常之后,对异常的操作
    			
    			
    			
    			
    		}finally{
    			
    			//异常操作玩,必须要执行的语句,比如关闭IO什么的
    			
    		}
    

    4、finally:不是必须的。一般先执行catch里面的语句,再执行finially。如果catch里面第一句话是return,那么先执行finally。

    5、throws:如果一个函数会抛出检查性异常,那么需要在声明的时候加上throws声明要抛出的异常,用于在外部捕获和处理。

    6、throw:直接抛出一个异常。

    package exceptionTest;
    
    
    public class main {
    	
    	public static void main(String args[]){
    		
    		int a[] = new int[2];
    		a[0]=1;
    		a[1]=2;
    		
    		//简单的捕获异常,以及使用异常对象的方法
    		try{
    			
    			System.out.println(a[3]);
    			
    		}catch(Exception e){
    			
    			System.out.println(e);
    			
    			
    			
    		}finally{
    			
    			System.out.println("异常!");
    			
    		}
    		
    		
    		
    		//外部处理test内部抛出的异常
    		try {
    			test();
    		} catch (Exception e) {
    			System.out.println(e);
    		}
    		
    		
    		
    	}
    	
    	static class myException extends Exception{
    		
    		
    		public myException(){
    			super();
    		}
    		
    		public String toString(){
    			
    			return "myException";
    			
    		}
    		
    	}
    	
    	
    	//如果一个函数可能会抛出 检查性 异常,必须用throws声明
    	//静态方法里面使用静态内部类
    	public static void test() throws Exception{
    		
    		myException e = new myException();
    		
    		
    		throw e;
    		
    			
    	}
    	
    
    }
    

  • 相关阅读:
    android Dialog 底部弹出
    L2-023. 图着色问题(暴力)
    L2-023. 图着色问题(暴力)
    L2-022. 重排链表
    L2-022. 重排链表
    L2-020. 功夫传人(dfs+vector 或者 邻接矩阵+dij+优先队列)
    L2-020. 功夫传人(dfs+vector 或者 邻接矩阵+dij+优先队列)
    愿天下有情人都是失散多年的兄妹(bfs)
    愿天下有情人都是失散多年的兄妹(bfs)
    循环赛日程表(分治)
  • 原文地址:https://www.cnblogs.com/wzben/p/5980314.html
Copyright © 2011-2022 走看看