我在静态方法中使用 this 初始化新对象时遇到问题。我有一个像下面这样的数据库类。
public class LatLogDBAdapter {
private final Context mCtx;
private DatabaseHelper mDbHelper;
private SQLiteDatabase mDb;
private static class DatabaseHelper extends SQLiteOpenHelper {
DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
Log.w(TAG, DATABASE_CREATE);
db.execSQL(DATABASE_CREATE);
}
}
我在另一个类中有一个静态方法,在那个静态方法中我喜欢使用这个上下文初始化 DatabaseHelper,但错误是“不能在静态上下文中使用它”。
我在一个单独的类中的静态方法如下,
public class DetailMapView extends FragmentActivity {
public static void updateLocation(String number, String LatLong){
LatLogDBAdapter dbHelper = new LatLogDBAdapter(this);
}
}
我怎样才能避免出现“不能在静态上下文中使用它”的错误。谢谢