读书人

为什么发生错误后程序终止运行

发布时间: 2011-12-11 23:19:43 作者: rapoo

为什么发生异常后程序终止运行

Java code
try {    SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");    Date fileDate = sdf.parse("20080528");} catch (ParseException e) {    // TODO Auto-generated catch block    e.printStackTrace();}


Java code
    public int[] executeMUpDateBatch(String sKind){        int[] result = null;        String TableName = getConfig(sKind);        if(upDates==null)            return result;        try {            Connection conn = DATABASE.connPool.getConnection();            PreparedStatement ps = conn.prepareStatement(upMSql);            for(int i=0;i<upDates.size();i++){                ps.setString(1, upDates.get(i).get(0));                ps.setString(2, upDates.get(i).get(1));                ps.setString(3, upDates.get(i).get(2));                ps.setString(4, upDates.get(i).get(3));                ps.setString(5, upDates.get(i).get(4));                ps.setString(6, upDates.get(i).get(5));                ps.setString(7, upDates.get(i).get(6));                ps.setString(8, upDates.get(i).get(7));                ps.setString(9, upDates.get(i).get(8));                ps.setString(10, upDates.get(i).get(9));                ps.addBatch();//                for(int j=1;j<upDates.get(i).size();j++){//                    ps.setString(j, upDates.get(i).get(j-1));//                }            }            result = ps.executeBatch();            DATABASE.connPool.returnConnection(conn);            return result;        } catch (SQLException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }    }


为什么我的程序在抛出以上两种异常后终止,如果我希望它继续运行该怎么处理。

[解决办法]
都到程序末尾了,下面没有代码怎么执行?
[解决办法]
加个finally,里面写你要继续执行的代码,就可以了
[解决办法]
try {
// ...可能抛出异常的部分
} catch(Exception e) {
// ...处理异常
}

// ...异常处理完了,继续运行


[解决办法]
异常抛出后,就不能返回原来的位置了
你还想处理什么就在处理异常的后面处理吧
[解决办法]
有个办法,你用循环把try catch块包围起来,然后catch中不要执行e.printStackTrace();
,就一个空体就OK
[解决办法]
抛出异常后要返回原来的位置也是可以的。把try catch放到一个循环里。
boolean condition = true;
while(condition) {
try {
...
condition = false; //如果没有异常就跳出循环。
}
catch(Exception e) {
e.printStackTrace();
} //有异常就回到原点继续。
}
[解决办法]
去看think in java吧
[解决办法]
这个方法比较多
可以在捕获异常的同时调用新的方法
可以用finally类继续调用其他方法
可以捕获到异常不进行处理继续执行其他代码。

[解决办法]
我就不明白了,为什么遇到问题了都让人家去看书呢! 有些是要去看书,但是有些问题是看完书后不理解的才拿出来问问!你知道就告诉人家嘛,多打几个字助人为乐呀,况且你也不是什么都会!
[解决办法]
探讨
我就不明白了,为什么遇到问题了都让人家去看书呢! 有些是要去看书,但是有些问题是看完书后不理解的才拿出来问问!你知道就告诉人家嘛,多打几个字助人为乐呀,况且你也不是什么都会!

读书人网 >J2SE开发

热点推荐