📄 exceptionframe.java
字号:
package exception;import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.io.*;/** * <p>Title: Exception Demo</p> * <p>Description: This is a Exception demo</p> * <p>Copyright: Copyright (c) 2002</p> * <p>Company: d6-125</p> * @author Liujun * @version 1.0 */public class ExceptionFrame extends JFrame { JPanel contentPane; GridBagLayout gridBagLayout1 = new GridBagLayout(); JButton jButton1 = new JButton(); JButton jButton2 = new JButton(); JButton jButton3 = new JButton(); JButton jButton4 = new JButton(); JButton jButton5 = new JButton(); JButton jButton6 = new JButton(); //Construct the frame public ExceptionFrame() { enableEvents(AWTEvent.WINDOW_EVENT_MASK); try { jbInit(); } catch(Exception e) { e.printStackTrace(); } } //Component initialization private void jbInit() throws Exception { //setIconImage(Toolkit.getDefaultToolkit().createImage(ExceptionFrame.class.getResource("[Your Icon]"))); contentPane = (JPanel) this.getContentPane(); jButton1.setText("除数为零"); jButton1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { jButton1_actionPerformed(e); } }); contentPane.setLayout(gridBagLayout1); this.setSize(new Dimension(213, 220)); this.setTitle("Exception Frame Demo"); jButton2.setText("数组越界"); jButton2.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { jButton2_actionPerformed(e); } }); jButton3.setText("使用了空指针"); jButton3.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { jButton3_actionPerformed(e); } }); jButton4.setText("错误的赋值"); jButton4.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { jButton4_actionPerformed(e); } }); jButton5.setText("文件找不到"); jButton5.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { jButton5_actionPerformed(e); } }); jButton6.setToolTipText(""); jButton6.setText("不知道的错误"); jButton6.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { jButton6_actionPerformed(e); } }); contentPane.add(jButton1, new GridBagConstraints(0, 0, 6, 1, 0.0, 0.0 ,GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 35, 0)); contentPane.add(jButton2, new GridBagConstraints(0, 1, 5, 1, 0.0, 0.0 ,GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 34, 0)); contentPane.add(jButton3, new GridBagConstraints(0, 2, 3, 1, 0.0, 0.0 ,GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 7, 0)); contentPane.add(jButton4, new GridBagConstraints(0, 3, 3, 1, 0.0, 0.0 ,GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(0, 0, 0, 0), 38, 0)); contentPane.add(jButton5, new GridBagConstraints(0, 4, 3, 1, 0.0, 0.0 ,GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 39, 0)); contentPane.add(jButton6, new GridBagConstraints(0, 5, 4, 1, 0.0, 0.0 ,GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 9, 0)); } //Overridden so we can exit when window is closed protected void processWindowEvent(WindowEvent e) { super.processWindowEvent(e); if (e.getID() == WindowEvent.WINDOW_CLOSING) { System.exit(0); } } void jButton1_actionPerformed(ActionEvent e) { int[] a = new int[10]; try { a[1] = a[2] / (a[3]-a[3]); } catch(RuntimeException ei) { JOptionPane.showMessageDialog(this, "捕捉运行时的例外:"+ei);//例外,显示出错信息。 } catch(Exception ei) { JOptionPane.showMessageDialog(this, "捕捉例外:"+ei);//例外,显示出错信息。 } } void jButton2_actionPerformed(ActionEvent e) { int[] a = new int[10]; try { a[1] = a[10]; } catch(RuntimeException ei) { JOptionPane.showMessageDialog(this, "捕捉运行时的例外:"+ei);//例外,显示出错信息。 } catch(Exception ei) { JOptionPane.showMessageDialog(this, "捕捉例外:"+ei);//例外,显示出错信息。 } } void jButton3_actionPerformed(ActionEvent e) { Frame a =null; try { a.show(); } catch(RuntimeException ei) { JOptionPane.showMessageDialog(this, "捕捉运行时的例外:"+ei);//例外,显示出错信息。 } catch(Exception ei) { JOptionPane.showMessageDialog(this, "捕捉例外:"+ei);//例外,显示出错信息。 } } void jButton4_actionPerformed(ActionEvent e) { Frame f ; try { f = (Frame)e.getSource(); } catch(RuntimeException ei) { JOptionPane.showMessageDialog(this, "捕捉运行时的例外:"+ei);//例外,显示出错信息。 } catch(Exception ei) { JOptionPane.showMessageDialog(this, "捕捉例外:"+ei);//例外,显示出错信息。 } } void jButton5_actionPerformed(ActionEvent e) { try { FileInputStream is = new FileInputStream("No such file"); } catch(RuntimeException ei) { JOptionPane.showMessageDialog(this, "捕捉运行时的例外:"+ei);//例外,显示出错信息。 } catch(Exception ei) { JOptionPane.showMessageDialog(this, "捕捉例外:"+ei);//例外,显示出错信息。 } } void jButton6_actionPerformed(ActionEvent e) { try { throw new UnknownError(); } catch(RuntimeException ei) { JOptionPane.showMessageDialog(this, "捕捉运行时的例外:"+ei);//例外,显示出错信息。 } catch(Exception ei) { JOptionPane.showMessageDialog(this, "捕捉例外:"+ei);//例外,显示出错信息。 } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -