关于Java异常的疑问
本文介绍了关于Java异常的疑问的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
众所周知下面的代码编译不过:
public class test{
private static void haha(){
throw new Exception();
}
public static void main(String[] args) {
haha();
return;
}
}
javac test.java
未报告的异常错误Exception; 必须对其进行捕获或声明以便抛出。
但是下面的代码没有进行错误处理,却能够通过编译:
public class test{
public static void main(String[] args) {
String s = new String("test");
System.out.println(s.substring(0,6));
return;
}
}
javac test.java
java test
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 6
at java.lang.String.substring(Unknown Source)
at test.main(test.java:4)
请问这是什么原因?
解决方案
StringIndexOutOfBoundsException继承了RuntimeException,不需要显式地声明处理。
这篇关于关于Java异常的疑问的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文