关于java抛出异常的方式
publicstaticvoidabc()throwsNullPointerException,IndexOutOfBoundsException{Listlist=nu...
public static void abc() throws NullPointerException,IndexOutOfBoundsException { List list = null; try { list.size(); } catch (NullPointerException e) { throw e; } System.out.println("a"); int[] i = { 1, 2 }; try { System.out.println(i[2]); } catch (IndexOutOfBoundsException e) { throw e; }
} public static void bcd() throws NullPointerException,IndexOutOfBoundsException{ List list=null; list.size(); System.out.println("a"); int[] i = { 1, 2 }; System.out.println(i[2]); }请问这两个方法的抛出异常的方式,那个才是最规范的,并且告诉我为什么 展开
} public static void bcd() throws NullPointerException,IndexOutOfBoundsException{ List list=null; list.size(); System.out.println("a"); int[] i = { 1, 2 }; System.out.println(i[2]); }请问这两个方法的抛出异常的方式,那个才是最规范的,并且告诉我为什么 展开
1个回答
2013-08-13
展开全部
我也不知道哪个规范,但个人认为一般都是第二个,因为第一个是你程序捕获到然后再抛出,第二个是jvm自己走到异常处自己抛出,既然jvm已经会抛出异常了,那你干嘛还用第一种手动捕获的呢,我觉得这可能还会浪费一些效率,虽然是微乎其微的,再者第一种可能就是你会预先知道这地方可能会有异常,在catch那里要做些相应的处理,然后再抛.所以我觉得也没有规范不规范之说了,两种用法各有一点不同而已. 还有 下次你贴代码最好能换行什么的,或截图啊,你这样贴出来我们回答的还得去格式化代码
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询