java Class代码不能理解求助

我在网上找到一个实例打算研究下但是看到一下代码我就有点看不懂了publicvoidinitGame(){GameDataSaver.create(mSokoban);}p... 我在网上找到一个实例 打算研究下 但是看到一下代码 我就有点看不懂了

public void initGame()
{
GameDataSaver.create(mSokoban);
}
public class GameDataSaver
{
private static Activity mSokoban;
private static GameDataSaver instance;
public static void create(Activity sokoban)
{
if(null == instance)
{
instance = new GameDataSaver(sokoban);
}
}
private GameDataSaver(Activity sokoban)
{
mSokoban = sokoban;
}

谁能告诉我为什么要这样写啊 有啥好处吗
展开
 我来答
wujixin2
2013-07-27 · TA获得超过215个赞
知道小有建树答主
回答量:141
采纳率:80%
帮助的人:57.5万
展开全部
这个是设计模式里的一种模式叫单例模式,它只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,这样就可以节约系统资源。
匿名用户
2013-07-27
展开全部
public class GameDataSaver{ ....};这是一个类

public void initGame()
{
GameDataSaver.create(mSokoban);
} 这个方法调用 GameDataSaver类里面的create()方法

public static void create(Activity sokoban)
{
if(null == instance)
{
instance = new GameDataSaver(sokoban);
}
} 这个create方法是实例化 GameDataSaver类 ;if(null == instance){...} 是为了只实例化这个类一次,如果 instance !=null了,就不再new了。

private GameDataSaver(Activity sokoban)
{
mSokoban = sokoban;
} GameDataSaver类的构造函数,传参的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hw910819
2013-07-27
知道答主
回答量:23
采纳率:0%
帮助的人:5.8万
展开全部
关键是这个写的是什么? 还有就是这个里面连主函数都没有!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式