自行编写程序完成下列三种异常处理方式(可参看教材程序): (1)使用try-catch-finally语句捕获和处理异常; (2)使用throw抛出异常和使用throws声明方法抛出异常; (3)自定义异常类并调用;
1、编写程序,在main()方法中使用try块抛出一个Exception类的对象,为Exception的构造方法提供一个字符串参数,在catch块内捕获该异常并打印出字符串参数,添加一个finally块并打印一条消息。 public class Test{ public static void main(String args[]){ try{ throw new Exception("demo exception"); }catch(Exception e){ System.out.println(e.getMessage()); }finally{ System.out.println("Program finished."); } } } 2、编写程序,定义一个static方法methodA(),令其声明抛出一个IOException异常,再定义另一个static方法methodB(),在该方法中调用methodA()方法,在main()方法中调用methodB()方法。 public class Test{ public static void methodA() throws IOException{ System.out.println("In method A"); } public static void methodB(){ methodA(); System.out.println("In method B"); } public static void main(String args[]){ methodB(); } } 3、创建一个自定义的异常类,该类继承Exception类,为该类写一个构造方法,该构造方法带一个String类型的参数。写一个方法,令其打印出保存下来的String对象。再编写一个类,在main()方法中使用try-catch结构创建一个MyException类的对象并抛出,在catch块中捕获该异常并打印出传递的String消息。 public class MyException extends Exception{ public MyException() { } public MyException(String message){ super(message); } public void output(){ System.out.println(getMessage()); } public static void main(String[] args){ try{ throw new MyException("My Exception."); }catch(MyException e){ e.output(); System.out.println(e.getMessage()); } } }
举一反三
- 运行时异常可以使用try…catch语句对异常进行捕获或者使用throws关键字声明抛出异常。
- 关于异常处理,如果程序中要抛出异常,应使用下列哪个语句( ) A: catch B: throw C: finally D: throws
- 对于已经被定义过可能抛出异常的语句,在编程时() A: 必须使用try catch语句处理异常,或用throws将其抛出 B: 如果程序错误,必须使用trycatch语句处理异常 C: 可以置之不理 D: 可以通过throw语句新建异常并将其抛出
- 【多选题】下列关于自定义异常的描述中,正确的是( ) A. 自定义的异常类需继承Exception类,在构造方法中使用super()语句调用Exception的构造方法 B. 自定义异常类需要用throw关键字在方法中声明抛出异常的实例对象 C. 如果想要调用者捕获throw抛出的异常,需要在抛出异常的方法中使用throws关键字指明异常 D. 抛出的异常对象可以使用try…catch语句对其进行
- 对于已经被定义过可能抛出异常的语句,在编程时()。 A: 必须使用try/catch语句处理异常,或用throws将其抛出 B: 如果程序错误,必须使用try/catch语句处理异常 C: 可以置之不理 D: 只能使用try/catch语句处理
内容
- 0
对于已经被定义过可能抛出异常的语句 A: 可以置之不理 B: 只能使用try/catch语句处理 C: 必须使用 try/catch语句处理异常 D: 必须使用try/catch语句处理异常,或者使用throw语句将其抛出
- 1
方法声明抛出异常应使用关键字throws;异常对象创建语句声明抛出异常应使用关键字throw
- 2
对于已经被定义过可能抛出异常的语句,在编程时: ( ) A: 必须使用try/catch语句处理异常,或用throws将其抛出 B: 如果程序错误,必须使用try/catch语句处理异常 C: 可以置之不理
- 3
Java异常处理机制主要通过以下两种方式来处理异常:( )( ) A: 使用try…catch…finally语句对异常进行捕获和处理。 B: 编程时绝对避免出现异常 C: 用if语句判断,返回错误代码。 D: 在可能产生异常的方法定义首部用throws声明抛出异常。
- 4
使用()语句捕获并处理异常,使用()语句抛出异常。 A: try/except B: raise C: else D: finally