异常throws关键字 异常throw关键字

本文深入讲解Java中的异常处理机制,包括throws和throw关键字的使用,自定义异常类的创建及抛出过程。通过实例演示了如何声明方法可能抛出的异常,如何手动抛出异常,以及如何定义和使用自定义异常类。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

throws关键字

class Math{
    public int div(int i,int j)throws Exception{   //throws Exception声明的方法不对此类异常进行处理,而由该方法的调用者负责处理
        int temp=i/j;
        return temp;
    }
}
public class seven4{
    public static void main(String[] args){
        Math m=new Math();
        try{
            System.out.println("除法操作:"+m.div(10,2)); 
        }
        catch(Exception e){
            e.printStackTrace();    //打印异常
        }
    }
}

throw关键字

java中还可以直接使用throw关键字人为抛出一个异常,人工抛出异常的格式:

  throw 异常类对象;    ---被抛出的必须是Throwable或其子类对象

     IOException e=new IOException();
     throw e;      

   程序执行throw语句后立即终止,然后在包含它的所有try块中从里向外寻找含有与其类型匹配的catch子句。

public class ThrowDemo1{
    public static void main(String args[]){
        try{
            throw new Exception("自己抛着玩的。") ;    //抛出时直接抛出异常实例化对象即可

        }catch(Exception e){
            System.out.println(e) ;
        }
    }
}

自定义异常类

虽然Java的内置异常处理能够处理大多数常见错误,但用户仍需建立自己的异常类型来处理特殊情况。这时可以通过创建Exception的子类来定义自己的异常类。

格式:class 类名 extends Exception{

     … …

     }

class MyException extends Exception{
    MyException(String str){  //在定义异常类时一般需要定义构造方法接收异常信息,该信息可由父类的构造方法传入。
        super(msg);
    }
}

 

系统定义的异常,在程序中遇到时是由系统自动抛出的,但是 在抛出自定义异常时,需要用户使用throw语句自己抛出,其格式 如下:

    throw new 自定义的异常类类名([参数列表]);

class MyException extends Exception{    
    public MyException(String msg){
        super(msg) ;    
    }
}
public class DefaultException{    
    public static void main(String args[]){
        try{
            throw new MyException("自定义异常。") ;     
        }catch(Exception e){
            System.out.println(e) ;
        }
    }
}

 

转载于:https://www.cnblogs.com/l666/p/9657399.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值