Chr*_*ian 4 java sqlite android
我想扩展SQLiteDataBase类,以便能够覆盖一些方法(比如rawQuery,execSQL,...)以及执行有关查询执行时间的一些统计信息.
我称之为这些功能的地方有数百个.因此,从基类SQLiteDatabase创建派生类将对我有所帮助!
问题是:在扩展SQLiteDataBase时,它无法从超类中找到任何构造函数.
import android.database.sqlite.SQLiteDatabase;
public class MySQLiteDatabase extends SQLiteDatabase
{
MySQLiteDatabase()
{
super(); // <<<--- can't find any visible constructor
}
}
Run Code Online (Sandbox Code Playgroud)
Luk*_*rog 10
我称之为功能的地方有数百个.因此,从基类SQLiteDatabase创建派生类将对我有很大帮助!
你不能扩展SQLiteDatabase它的声明final,你不能final在java中扩展一个类.
另一种方法是创建一个"包装器" SQLiteDatabase,它将SQLiteDatabase使用其方法复制类,并在包装器方法中插入测量逻辑:
public class SQLiteDatabaseWrapper {
private SQLiteDatabase mDatabase;
public void initDatabase() {
//obtain the database here and assign it to mDatabase
}
// replicate the SQLiteDatabase methods
public void execSQL(String sql) {
//insert whatever logic you have for measurement
// do the measurement
mDatabase.execSQL(sql);
}
// other methods from SQLiteDatabase
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2959 次 |
| 最近记录: |