我的 Androdi 应用程序中有两个不同的 falvours,它们应该使用不同的 SQL 实现。一种用途:
android.database.sqlite.SQLiteDatabase
第二:
net.sqlcipher.database.SQLiteDatabase
我有这样的方法:
getAll(SQLiteDatabase conn)
我应该如何解决这种情况以避免复制和粘贴?最好的做法是什么?我有几个想法:第一个(有很多复制粘贴最糟糕的)是提供不同的方法:
getAll(android.database.sqlite.SQLiteDatabase conn)
getAll(net.sqlcipher.database.SQLiteDatabase conn)
其次是在导入适当的数据库(聚合,组合,因为 SQLiteDatabase 是最终的)中用其他一些类型包装这个类:
import android.database.sqlite.SQLiteDatabase;
public class SQLliteDatabaseFlavoured {
SQLiteDatabase sqLiteDatabase;
}
随着用法:
getAll(SQLliteDatabaseFlavoured.SQLiteDatabase conn)