当我在 Android 上使用 db.exec()
时,为什么不需要catch
SQLExecption
?
数据库是一个SQLiteDatabase
对象。
当我编写以下代码时,Eclipse 不会提醒我捕获 SQLException
并且代码可以正常运行。但是,该方法应该根据情况抛出 SQLException
到eclipse提供的文档。
我认为程序员应该在 java 中创建方法时捕获每个异常
或添加 throws 语句。
以下是我的代码。
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
SQLiteDatabase db=openOrCreateDatabase("keys.db",Context.MODE_PRIVATE,null);
String sql="CREATE TABLE `mykey` (_id INTEGER PRIMARY KEY AUTOINCREMENT, "+
"public_key VARCHAR, private_key VARCHAR)";
db.execSQL(sql);
db.close();
}
谢谢。
最佳答案
看看documentation :SQLException
扩展了RuntimeException
,并且您不需要这些throws
子句。
编辑:请注意,这仅适用于 Android。在 Java SE 中,SQLException
不是从 RuntimeException
派生的。
关于java - 为什么在 Android 上使用 db.exec() 时不需要捕获 SQLExecption?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24144967/