zoukankan      html  css  js  c++  java
  • 在方法中抛出异常,使用throw关键字抛出异常

    package com.exception.demo;
    
    public class Captor {
    
    	/**
    	 * @param args
    	 * Exception是所有异常类的父类
    	 * 如果将它的代码块方其他两个代码块前面,后面的代码块将永远得不到执行
    	 * 所以 catch 语句的顺序不可调换
    	 * 
    	 * 异常的使用原则:
    	 *    1.在当前方法中使用 try - catch 语句捕获异常
    	 *    2.一个方法被覆盖时,覆盖它的方法必须抛出相同的异常或异常的子类
    	 *    3.如果父类抛出多个异常,则覆盖方法必须抛出那些异常的一个子集,不能抛出新异常 
    	 */
    	static int quotient(int x,int y)throws MyException{	// 定义方法抛出异常
    		if(y < 0){	// 判断参数是否小于0
    			throw new MyException("除数不能是负数");	// 异常信息
    		}
    		return x / y;	//  返回值
    	}
    	
    	
    	public static void main(String[] args) {	// 主方法
    		try {	// try语句包含可能发生异常的语句
    			int result = quotient(3, -1);	// 调用语句方法 quotient()
    		} catch (MyException e) {	// 处理自定义异常
    			System.out.println(e.getMessage());	//输出异常信息
    		}catch (ArrayStoreException e) {	// 处理 ArrayStoreException 异常
    			System.out.println("除数不能为0");	// 输出异常信息
    		}catch (Exception e) {	// 处理其它异常
    			System.out.println("程序发生了其他异常");	//输出提示信息
    		}
    	}
    
    }
    
    class MyException extends Exception {	// 创建自定义异常类
    	String message;	// 定义 String 类型变量
    	
    	public  MyException(String ErrorMessager){	// 父类方法
    		message = ErrorMessager;
    	}
    	
    	public String getMessage(){	// 覆盖 getMessage() 方法
    		return message;
    	}
    
    }
    

      

  • 相关阅读:
    Linux和windows 查看程序、进程的依赖库的方法
    ida pro 使用
    sql server相关
    nginx 日志log_format格式
    .yml文件格式
    svn加锁设置
    包含目录、库目录、附加包含目录、附加库目录、附加依赖项之详解
    visual studio 2017 (vs2017安装)
    OpenResty编译安装
    微信扫描二维码登录网站技术原理
  • 原文地址:https://www.cnblogs.com/spadd/p/4174605.html
Copyright © 2011-2022 走看看