Class 如何调用拥有它的SQLiteOpenHelper类';字符串中的名字

Class 如何调用拥有它的SQLiteOpenHelper类';字符串中的名字,class,cursor,sqliteopenhelper,Class,Cursor,Sqliteopenhelper,我的资产中有几个具有相同结构的可读数据库。用户将选择数据库的名称,并以字符串形式传递其SQliteOpenHelper类的名称。我使用class.forname()成功地启动了该类,但我无法将class.getMethod(“TableA”,null)转换为游标。当我只有SQLiteOpenHelper类名称时,有人能帮我获取游标吗?为所有类创建一个公共基类(或接口),然后您可以直接将新对象强制转换为该类型并直接访问其成员。好吧,我找到了解决问题的另一种方法。如果所有数据库都具有相同的结构,例如

我的资产中有几个具有相同结构的可读数据库。用户将选择数据库的名称,并以字符串形式传递其
SQliteOpenHelper
类的名称。我使用
class.forname()
成功地启动了该类,但我无法将
class.getMethod(“TableA”,null)
转换为
游标
。当我只有
SQLiteOpenHelper类
名称时,有人能帮我获取游标吗?

为所有类创建一个公共基类(或接口),然后您可以直接将新对象强制转换为该类型并直接访问其成员。

好吧,我找到了解决问题的另一种方法。如果所有数据库都具有相同的结构,例如相同的表但数据不同。您只能有一个SQLiteOpenHelper类,并将数据库名称传递给类本身,而不是将其定义为静态final。请参阅下面的代码

public class MyDatabases extends SQLiteOpenHelper {
    public ReadableDatabase (Context context, String Name) {super(context, Name, null, 1);}
}

谢谢,虽然我没有用这个方法,但它非常有用。我也会发布我的备选方案