您的位置:首页 > 编程语言 > Java开发

六大代码问题检验你的JAVA知识(转)

2008-08-01 15:57 369 查看
你觉得自己是一个Java专家吗?是否肯定自己已经全面掌握了Java的异常处理机制?在下面这段代码中,你能够迅速找出异常处理的六个问题吗?

  

OutputStreamWriter out =

java.sql.Connection conn =

try {

Statement stat = conn.createStatement();

ResultSet rs = stat.executeQuery("select uid, name from user");

while (rs.next())

{

out.println("ID:" + rs.getString("uid") + ",姓名: " + rs.getString("name"));

}

}

catch(SQLException sqlex)

{

out.println("警告:数据不完整");

throw new ApplicationException("读取数据时出现SQL错误", sqlex);

}

catch(IOException ioex)

{

throw new ApplicationException("写入数据时出现IO错误", ioex);

}

finally

{

if (conn != null) {

try {

conn.close();

}

catch(SQLException sqlex2)

{

System.err(this.getClass().getName() + ".mymethod - 不能关闭数据库连接: " + sqlex2.toString());

}

}

if (out != null) {

try {

out.close();

}

catch(IOException ioex2)

{

System.err(this.getClass().getName() + ".mymethod - 不能关闭输出文件" + ioex2.toString());

}

}

}

  本文的结论不是放之四海皆准的教条,有时常识和经验才是最好的老师。如果你对自己的做法没有百分之百的信心,务必加上详细、全面的注释。

一方面,不要笑话这些错误,不妨问问你自己是否真地彻底摆脱了这些坏习惯。即使最有经验的程序员偶尔也会误入歧途,原因很简单,因为它们确确实实带来了“方便”。所有这些反例都可以看作Java编程世界的恶魔,它们美丽动人,无孔不入,时刻诱惑着你。也许有人会认为这些都属于鸡皮蒜毛的小事,不足挂齿,但请记住:勿以恶小而为之,勿以善小而不为。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: