我正在javax.swing
制作一个应用程序,它从 XML Schema(使用 JAXFront 库)生成表单并将用户填充的数据存储到 XML 文档中。
我在需要时放置了 try-catch-finally 块,但是当主线程结束时(AWT 线程仍在运行)捕获异常时我遇到了一点问题。
我有两个做主要工作的班级和其他对这个问题不重要的班级:
主类:它具有以下结构。初始化应用程序并运行主框架
public class Main { public static void main(String[] args) { readArgs(); // An INI file with the app config Model model = initializeElements(args); // My model class try { MyFrame mfr = new MyFrame(title,model); mfr.visualize(); // Assembling view and setting visible } catch( Excepion e ) { doCleanUp(); System.exit(-1); } } }
Frame Class : 生成视图和监听事件
public class MyFrame extends JFrame implements ActionListener,MenuListener { // Some attributes // Other mthods without importance /** * Compose the elements, add listeners and set visible the frame */ public void visualize() { generateFormPanel(); setListeners(); validate(); setVisible(true); } public MyFrame(String title, Modele model) { super(title); createElementsUsing(model); } public void actionPerformed(ActionEvent e) { // Code to manage events } }
那么问题来了:当从main方法中执行visualize函数时,会生成并显示视图。那一刻是我失去对异常捕获的控制的时候。那么我的问题是,是否有某种方法可以捕获在此之后抛出的可能的 RuntimeExceptions。
我希望你能理解我的英语并能回答这个问题。
提前致谢。