- package {
- import flash.display.MovieClip;
- import flash.events.*;
- public class Player extends MovieClip {
- public static var _player:Player=null;
- public function Player() {
- }
- //单例模式
- public static function getInstance():Player
- {
- if(_player==null)
- {
- _player=new Player();
- }
- return _player;
- }
- }
- }
引用网上的说话
单例模式的要点有三个;一是某各类只能有一个实例;二是它必须自行创建这个事例;三是它必须自行向整个系统提供这个实例。
单例模式有以下的特点:
1 单例类只可有一个实例。
2 单例类必须自己创建自己这惟一的实例。
3 单例类必须给所有其他对象提供这一实例。
作用:在制作一个RPG或者只是一个玩家的实例中,这种设计模式的方法能够方便给我们带来好处。
再次如果希望制作RPg游戏,需要考虑到人物各种属性:包括等级,行为的速度,力量,魔法,智力,人的生命值等等人物属性。需要更多的了解,而这种设计模式的方便能够大大提高效率。
引用静态方法其实很简单,使用到类名引用就行,但不能用实例化来引用
private var _player:Player;
public function main(){
_player=Player.getInstance();
}
这样就可以引用到它的实例。如果需要把它显示到舞台上,只需要加上addChild(_player);就可以
如果需要引用它的属性,那就可以直接_player.属性名(如果_player.level等级)
这个只做一个例子吧。好就写到这里