SQLITE数据库的使用是Android单例模式典型的应用场景。
单例模式好处:
将对象写成static,避免内存频繁实例化,因此对象在静态内存区只有一份。直接使用getInstance()取得对象。
模型类
-
public class DatabaseHelper extends SQLiteOpenHelper
-
{
-
private static DatabaseHelper mInstance = null;
-
-
/** 单例模式 **/
-
static synchronized DatabaseHelper getInstance(Context context)
-
{
-
if (mInstance == null)
-
{
-
mInstance = new DatabaseHelper(context);
-
}
-
return mInstance;
-
}
-
}
以静态方式定义的对象,可以在其它类中直接调用。例如,假定一个应用类:
-
public class Newdate extends Activity
-
{
-
private DatabaseHelper mDbHelper;
-
private void initParam()
-
{
-
mDbHelper = DatabaseHelper.getInstance(this);
-
}
-
}
这里涉及一个JAVA的关键字synchronized ,见Android栏关键字项中对相关文章对它的分析。
阅读(2444) | 评论(0) | 转发(0) |