众所周知下面的代码编译不过:
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)
请问这是什么原因?
倚天杖
米脂
相关分类