请各位解释一下这个Java小程序(我是初学者)

来源:百度知道 编辑:UC知道 时间:2024/06/01 22:20:24
源文件如下:

public class ThrowableException {
public static void main(String args[]) {
try {
throw new Throwable("Here is my Exception");
}
catch(Throwable e) {
System.out.println("Caught Throwable");
System.out println("e.getMessage(): "+e.getMessage());
System.out.println("e.toString(): "+e.toString());
System.out.println("e.printStackTrace(): ");
e.printStackTrace();
}
}
}

根据我个人的理解,只有当try这个语句块里的语句运行出现问题时才会捕获异常,而本程序中try中的语句没有什么问题。因此非常不理解。请各位前辈尽可能具体地解释一下这个小程序每句话的意思,谢谢!

还有就是文件编译时出现如下错误:

ThrowableException.java:8: 需要 ';'
System.out println("e.getMessage(): "+e.getMessage());
^
ThrowableException.java:8: 需要 ';'
System.out println("e.getMessage(): "+e.getMessage());
^

System.out println("e.getMessage(): "+e.getMessage());
这句话你少个点"."正确如下
System.out.println("e.getMessage(): "+e.getMessage());

我想楼主没理解这个程序的目的:
它其实就是演示给你看什么是异常,都有哪些参数,属性等
throw new Throwable("Here is my Exception");
这个本身就是自定义的一个异常。

catch 捕获了这个异常
System.out.println("e.getMessage(): "+e.getMessage()); 是抛出异常的信息,也就是"Here is my Exception"这句话
System.out.println("e.toString(): "+e.toString());异常的路径,也是包名
e.printStackTrace();这个是打印异常信息

首先是两个错误
ThrowableException.java:8: 需要 ';'
System.out println("e.getMessage(): "+e.getMessage());
->System.out.println("e.getMessage(): "+e.getMessage());
ThrowableException.java:8: 需要 ';'
System.out println("e.getMessage(): "+e.getMessage());
->System.out.println("e.getMessage(): "+e.getMessage());

其次是异常捕获的问题.
try中有这