gao627
发贴: 6
积分: 0
|
于 2005-05-11 22:43
JAVA中方法可以用throws来声明可能会抛出的异常,对大多数Exception子类来说,Java编译器会强迫你声明在一个成员函数中抛出的“异常”的类型。如果“异常”的类型是Error或RuntimeException,或它们的子类,这个规则不起作用。如果你想明确地抛出一个RuntimeException,你必须用throws语句来声明它的类型。有点不明白,代码如下: class text { public static void main(String []args) { text(); } static void text() throws ArithmeticException //声明抛出算术异常 { } } 这段代码我在调用main()中调用text()并未用try-catch处理,但是编译却可以通过,请问是为什么?
同样的 class text { public static void main(String []args) { text(); } static void text() { throw new ArithmeticException();//抛出一个ArithmeticException实例 } } 我在text方法定义中没有用throws声明,但却可以直接抛出异常实例又是为什么?这样的话throws对RuntimeException的意义在哪里?
|