Java中关于无法预料的例外的处理(难题,急.....)
Java中关于无法预料的例外的处理
当发生无法预料的例外,只要能实现以下二个功能就行。
1. 通知用户无法预料的例外的发生。
=〉因为有预想外例外发生,通知用户停止GUI操作。
2. 显示出例外的详细信息(Exception.printStackTrace())。
=〉这些信息将被用于开发者的代码错误跟踪分析。
现在我准备这样实现,如下:
Class RDBMain extend JFrame{
public static void main(String[] args){
try{
jbinit();
method1();
.....
}catch(Exception ){
ShowException("未知错误发生.");
}
//但是如果想捕获这样的Exception,必须在jbinit()和method1方法中
//抛掷异常,否则就不会在main方法中捕获到,而被控制台捕获了.如下定义:
}
public void jbinit() throw Exception{
method2();
this.addWindowsListener(new WindowAdapter(){
public void window_closed(WindowEvent e){
try{
window_close();
}catch(Exception e){
ShowException("未知错误发生.");
}
}
})
}
public void mehtod1() throw Exception{
}
public void mehtod2() throw Exception{
}
public void window_close() throw Exception{
}
}
其实并不是的简单的在main方法中添加try-catch语句就可以了,
在各个事件的响应中都要添加相应的try-catch语句,比如mouse_click,
window_closed,focus_gain等事件中,因为这些都是在用户做一些动作的时候才
会触发的.而且在各个方法中都必须抛掷异常(因为不可预测嘛,如同我上面的
例子).
感觉上面这样实现对不可预知的异常的捕获实在是太不好了,大家有什么好的办法吗?