在静态SQLiteDatabase类中调用非静态方法

时间:2010-03-30 16:41:43

标签: java android exception-handling

我希望在我使用的静态SQLite数据库类中发生异常时向用户显示一个msg(msg框或Toast)。

问题是我无法在静态类中调用非静态方法,我该如何处理呢。

这是班级

private static SQLiteDatabase getDatabase(Context aContext) {

我希望在异常发生时在类中添加类似的内容,但context会在静态类中生成对非静态引用的问题。

Context context = getApplicationContext();
CharSequence text = "Hello toast!";
int duration = Toast.LENGTH_SHORT;

Toast toast = Toast.makeText(context, text, duration);
toast.show();

1 个答案:

答案 0 :(得分:2)

听起来你正在尝试使用“getApplicationContext()”函数,这是一种非静态方法。你不能从静态方法中调用非静态方法。为什么不直接使用传入的上下文?即,

Context context = aContext;
CharSequence text = "Hello toast!";
int duration = Toast.LENGTH_SHORT;

Toast toast = Toast.makeText(context, text, duration);
toast.show();