yyj469367953 发表于 2015-2-6 18:21

单例模式

unity的设计模式中有一个模式叫单例模式 今天在蛮牛教育群讨论了一下现在我来分享一下,我们为了保证一个对象有且仅有一个,这个时候我们需要用到单例模式了,单例模式的原理思路:因为对象是new出来的,那么我们就让它不能被new出来,因为new的是构造函数对吧,所以这样我们就把构造函数设置成私有的,这样就不能new了吧,但是这时候就又出现了一个问题。我们自己也不能new了,那怎么办呢?这时候我们就需要定义一个公共的静态方法,加了静态方法之后呢,我们只能通过类名来调用它。
public staticGameTable table=null;
//设置私有的构造函数,函数名和类名相同
privateGameTable(){
}
//初始化
public voidinit(){
}
//定义一个静态的公有的方法。
public staticGameTable GetInstance(){
   if(null==table){ //判断实例是否存在,如果存在就返回,如果不存在就new
   table=new GameTable();
   table.init();//类的方法中找类的属性,是不用加类名的
   }
return table;
}
publicstaticreset(){
}

如果想要在外部进行调用的话,就可以直接

GameTabletable1=GameTable.GetInstance();
table1.reset();

向qian进--- 发表于 2017-4-3 11:55

很不错

狮子 发表于 2017-4-3 11:57

好帖就是要顶

等待1gr 发表于 2017-4-3 12:19

真心顶

30度水平向上 发表于 2017-4-3 12:09

说的非常好

-:謝幕﹎ 发表于 2017-4-3 12:11

很好哦

na3110c 发表于 2017-6-14 14:34

楼主是超人

HPhaSHIqi 发表于 2017-6-14 14:38

好帖就是要顶

幽然的木糖棉 发表于 2017-6-14 14:48

顶顶多好

HPhaSHIqi 发表于 2017-6-14 15:03

说的非常好
页: [1] 2
查看完整版本: 单例模式