1 定义功能方法时,需要把出现的问题暴露出来让调用者去处理。那么就通过throws在方法上标识。 2 3 package cn.itcast_05; 4 5 import java.text.ParseException; 6 import java.text.SimpleDateFormat; 7 import java.util.Date; 8 9 /* 10 * 有些时候,我们是可以对异常进行处理的,但是又有些时候,我们根本就没有权限去处理某个异常。 11 * 或者说,我处理不了,我就不处理了。 12 * 为了解决出错问题,Java针对这种情况,就提供了另一种处理方案:抛出。 13 * 14 * 格式: 15 * throws 异常类名 16 * 注意:这个格式必须跟在方法的括号后面。 17 * 18 * 注意: 19 * 尽量不要在main方法上抛出异常。 20 * 但是我讲课为了方便我就这样做了。 21 * 22 * 小结: 23 * 编译期异常抛出,将来调用者必须处理。 24 * 运行期异常抛出,将来调用可以不用处理。 25 */ 26 public class ExceptionDemo { 27 public static void main(String[] args) { 28 System.out.println("今天天气很好"); 29 try { 30 method();//编译期异常抛出,必须处理 31 } catch (ParseException e) { 32 e.printStackTrace(); 33 } 34 System.out.println("但是就是不该有雾霾"); 35 36 method2();//运行期异常抛出,可以不用处理。 37 } 38 39 // 运行期异常的抛出 40 public static void method2() throws ArithmeticException { 41 int a = 10; 42 int b = 0; 43 System.out.println(a / b); 44 } 45 46 // 编译期异常的抛出 47 // 在方法声明上抛出,是为了告诉调用者,你注意了,我有问题。 48 public static void method() throws ParseException { 49 String s = "2014-11-20"; 50 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); 51 Date d = sdf.parse(s); 52 System.out.println(d); 53 } 54 }
时间: 2024-10-12 00:37:15