自动产生:当程序遇到错误代码,会产生异常,程序终止。
(推荐教程:java入门教程)
手动产生:throw new 异常类名();
throw必须定义在方法体中,用来抛出一个Throwable类型的异常。程序会在throw语句后立即终止,它后面的语句执行不到,然后在包含它的所有try块中(可能在上层调用函数中)从里向外寻找含有与其匹配的catch子句的try块。
(视频教程推荐:java视频教程)
举例:
手动抛出异常
package prac; public class t2 { public static void main(String[] args) throws Exception { // TODO Auto-generated method stub m1(); } public static void m1() throws Exception { System.out.println("m1----------start"); m2(); // 手动抛出受查异常 throw new Exception(); //System.out.println("m1----------end"); } public static void m2() { System.out.println("m2----------start"); // 手动抛出运行时异常,需要携带信息“程序因为异常而终止” throw new RuntimeException("程序因为异常而终止"); //System.out.println("m2----------end"); } } 程序运行结果为: m1----------start m2----------start Exception in thread "main" java.lang.RuntimeException: 程序因为异常而终止 at prac.t2.m2(t2.java:31) at prac.t2.m1(t2.java:21) at prac.t2.main(t2.java:16)