
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;
}
}
谁能告诉我为什么要这样写啊 有啥好处吗 展开
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;
}
}
谁能告诉我为什么要这样写啊 有啥好处吗 展开
3个回答
展开全部
这个是设计模式里的一种模式叫单例模式,它只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,这样就可以节约系统资源。
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类的构造函数,传参的
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类的构造函数,传参的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
关键是这个写的是什么? 还有就是这个里面连主函数都没有!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询