💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
# 9.10 练习 (1) 用`main()`创建一个类,令其抛出`try`块内的`Exception`类的一个对象。为`Exception`的构造器赋予一个字符串参数。在`catch`从句内捕获异常,并打印出字符串参数。添加一个`finally`从句,并打印一条消息,证明自己真正到达那里。 (2) 用`extends`关键字创建自己的异常类。为这个类写一个构造器,令其采用`String`参数,并随同`String`引用把它保存到对象内。写一个方法,令其打印出保存下来的`String`。创建一个`try-catch`从句,练习实际操作新异常。 (3) 写一个类,并令一个方法抛出在练习2中创建的类型的一个异常。试着在没有异常规范的前提下编译它,观察编译器会报告什么。接着添加适当的异常规范。在一个`try-catch`从句中尝试自己的类以及它的异常。 (4) 在第5章,找到调用了`Assert.java`的两个程序,并修改它们,令其抛出自己的异常类型,而不是打印到`System.err`。该异常应是扩展了`RuntimeException`的一个内部类。