游戏设计笔记:单例模式

来源:互联网 发布:维普外文期刊数据库 编辑:程序博客网 时间:2024/05/27 20:17
 
  1. package {
  2.     import flash.display.MovieClip;
  3.     import flash.events.*;
  4.     
  5.     public class Player extends MovieClip {
  6.         
  7.         public static var _player:Player=null;
  8.         public function Player() {
  9.         }
  10.         
  11.         //单例模式
  12.         public static function getInstance():Player
  13.         {
  14.             if(_player==null)
  15.             {
  16.                 _player=new Player();
  17.             }
  18.             
  19.             return _player;
  20.             
  21.         }
  22.     }
  23. }

 

引用网上的说话

单例模式的要点有三个;一是某各类只能有一个实例;二是它必须自行创建这个事例;三是它必须自行向整个系统提供这个实例。
单例模式有以下的特点:


1
单例类只可有一个实例。


2
单例类必须自己创建自己这惟一的实例。


3
单例类必须给所有其他对象提供这一实例。

 

 

作用:在制作一个RPG或者只是一个玩家的实例中,这种设计模式的方法能够方便给我们带来好处。

 

再次如果希望制作RPg游戏,需要考虑到人物各种属性:包括等级,行为的速度,力量,魔法,智力,人的生命值等等人物属性。需要更多的了解,而这种设计模式的方便能够大大提高效率。

 

 

引用静态方法其实很简单,使用到类名引用就行,但不能用实例化来引用

private  var _player:Player;

public function main(){

 

_player=Player.getInstance();

}

 

这样就可以引用到它的实例。如果需要把它显示到舞台上,只需要加上addChild(_player);就可以

 

如果需要引用它的属性,那就可以直接_player.属性名(如果_player.level等级

这个只做一个例子吧。好就写到这里

原创粉丝点击