日期:2014-05-20  浏览次数:20934 次

在相应的 try 语句主体中不能抛出异常的问题
import   java.lang.String;
import   java.io.*;
public   class   StringDome
{
public   static   void   main(String[]   args)
{
for(int   i=0;i <args.length;i++)
{

try
{
Integer.valueOf(args[i]);
}

catch(   IOException   e)
{
System.out.printf( "产生错误了 ");
break;
}
{System.out.println(Integer.valueOf(args[i]));}
}


}
}


以上的代码编译不通过  
提示:在相应的   try   语句主体中不能抛出异常   java.io.IOException   catch(IOException   e)  
额..不理解,请高手帮忙解答下...新手ing......>  


------解决方案--------------------
貌似应该抛出NumberFormatException
------解决方案--------------------
Up
------解决方案--------------------
直接换成Exception
------解决方案--------------------
没有IO异常.你捕获什么啊?
要不知道CATCH什么异常的话.直接捕获EXCEPTION.
------解决方案--------------------
就没有异常吗?你再看看
------解决方案--------------------
你捕获的异常种类不对,Integer.valueOf(args[i]);可能抛出NumberFormatException
所以你应该捕获这个异常,当然你也可以直接捕获这个异常的父类,看看Exception 的结构
就会明白了