异常-throw的概述以及和throws的区别

 1 package cn.itcast_06;
 2 
 3 /*
 4  * throw:如果出现了异常情况,我们可以把该异常抛出,这个时候的抛出的应该是异常的对象。
 5  * 
 6  * throws和throw的区别(面试题)
 7     throws
 8         用在方法声明后面,跟的是异常类名
 9         可以跟多个异常类名,用逗号隔开
10         表示抛出异常,由该方法的调用者来处理
11         throws表示出现异常的一种可能性,并不一定会发生这些异常
12     throw
13         用在方法体内,跟的是异常对象名
14         只能抛出一个异常对象名
15         表示抛出异常,由方法体内的语句处理
16         throw则是抛出了异常,执行throw则一定抛出了某种异常
17  */
18 public class ExceptionDemo {
19     public static void main(String[] args) {
20         // method();
21         
22         try {
23             method2();
24         } catch (Exception e) {
25             e.printStackTrace();
26         }
27     }
28 
29     public static void method() {
30         int a = 10;
31         int b = 0;
32         if (b == 0) {
33             throw new ArithmeticException();
34         } else {
35             System.out.println(a / b);
36         }
37     }
38 
39     public static void method2() throws Exception {
40         int a = 10;
41         int b = 0;
42         if (b == 0) {
43             throw new Exception();
44         } else {
45             System.out.println(a / b);
46         }
47     }
48 }
原文地址:https://www.cnblogs.com/ZHOUVIP/p/7221171.html