夯实Java基础--深入理解throw关键字

160 阅读2分钟

「这是我参与11月更文挑战的第7天,活动详情查看:2021最后一次更文挑战

前言

 大家好,我是程序猿小白 GW_gw,很高兴能和大家一起学习进步。

以下内容部分来自于网络,如有侵权,请联系我删除,本文仅用于学习交流,不用作任何商业用途。

摘要

 本文主要介绍Java中Throw关键字的使用情况。

Throw和Throws不要再傻傻分不清了!

throw关键字

有些时候和业务需求不符合的情况也会发生,这时候我们就应该报出异常。但是这种异常是系统无法识别出来的异常,这个时候我们就可以使用throw关键字来抛出该类异常。

使用throw抛出的是一个异常实例而不是一个具体的异常类。

  • 如果throw抛出的异常是checked异常,需要在try语句块中处理或者放在throws抛出的方法中。把该异常交给该方法的调用者来处理。
  • 如果throw抛出的异常是runtime异常,则可以把该异常用try catch来处理,也可以由调用者直接处理。

throw也常和if结合来判断是否需要抛出异常。

throw实例:

假设一个汽车的零件,如果尺寸小于10,那么就应该提醒制造者。

 package abnormity;
 ​
 import java.util.Scanner;
 ​
 /**
  * @author Gw_gw
  */
 public class Throw {
     public static void main(String[] args) {
         Scanner scanner = new Scanner(System.in);
         int size;
         size = scanner.nextInt();
         try{
             //使用try catch捕获
             if(size < 10){
                 throw new Exception("请注意:零件的尺寸小于10!!!");
             }
             //放在throws中处理
             IsQualified(size);
         }catch(Exception e){
             //try catch捕获checked异常
             System.out.println(e.getMessage());
         }
         //处理runtime异常
         throwRuntime(size);
     }
     public static void IsQualified(int size) throws Exception{
         if(size < 10){
             throw new Exception("请注意:零件的尺寸小于10!!!");
         }
     }
     public static void throwRuntime(int size){
         if(size < 10){
             //RuntimeException可以不处理,也可以放到try catch中处理
             throw new RuntimeException("请注意:零件的尺寸小于10!!!");
         }
     }
 }
 ​

结语

以上就是关于Java中throw关键字的使用,如有不正之处,欢迎掘友们留言指正。