工厂设计模式【Flash】
工厂模式在设计模式中可以说是最简单的一个模式了!我们平常写程序的时候工厂模式用的非常的广泛!这里我们就来详细的探讨一下工厂模式。
工厂模式是怎样诞生的呢?在实际的编程过程当中我们经常要碰到一个问题,就是类的封装,也可以说是隐藏产品类!这样我们就出现了工厂模式!这个模式就是专门用来隐藏产品类的!平常我们要是创建一个Sprite类的实例我们会这样写:
var my:Sprite = new Sprite();
addChild(my);
这样写看似简单明了!但事实上不符合我们隐藏产品类的目的!设想一下!这样写之后,在类中任意一个方法都可以访问到这个对象,这是我们不希望的。所以,我们就要想办法隐藏这个Sprite(在实际编程的时候一般都是比较复杂的对象)类。那么我们怎么做呢?首先我们要有一个思路!就是使用“中介”(这个名字是我自己起的)。这个中介是产品类与客户中间的一座桥梁,我们通过中介来生成产品。这样就可以来隐藏产品类了!
那么好了,我们来看一个简单的实例吧!这里我们的产品类使用的是接口!那么我们这个产品做什么呢?为了简单起见,我们的产品一个画一个正方形,另一个画一个圆形。这样来区分2个产品。
IShape接口:
package{
public interface IShape{
function moveshape(X:int,Y:int):void;
function drawshape():void;
}
}
Round类:
package{
import flash.display.Shape;
public class Round extends Shape implements IShape{
public function drawshape():void{
graphics.beginFill(0x00ff00);
graphics.drawCircle(0,0,100);
graphics.endFill();
}
public function moveshape(X:int,Y:int):void{
this.x = X;
this.y = Y;
}
}
}
Rectshape类:
package {
import flash.display.Shape;
public class Rectshape extends Shape implements IShape{
public function drawshape():void{
graphics.beginFill(0xff00ff);
graphics.drawRect(0,0,100,100);
graphics.endFill();
}
public function moveshape(X:int,Y:int):void{
this.x = X;
this.y = Y;
}
}
}
DrawshapeObject类:
package{
import flash.errors.IllegalOperationError;
import flash.display.DisplayObjectContainer;
import flash.display.Sprite;
public clas
相关文档:
ROM和RAM指的都是半导体存储器,ROM是Read Only Memory的缩写,RAM是Random Access Memory的缩写。ROM在系统停止供电的
时候仍然可以保持数据,而RAM通常都是在掉电之后就丢失数据,典型的RAM就是计算机的内存。
RAM分为两类:一种是静态的RAM(SRAM),另外的一种是动态RAM(DRAM),二者的区别是SRAM的速度要比DRAM的速 ......
可以利用SessionId在查找Session解决问题
Global.asax 文件中,添加如下代码
void Application_BeginRequest(object sender, EventArgs e)
{
try
{
string session_param_name = "ASPSESSID";
string session_cookie_name = "ASP.NET_SESSIONID";
if (HttpContext.Current.Request ......
flash mx.transitions.Tween;可以实现类似于补间动画的效果;导入该类:
import mx.transitions.Tween;
然后用new Tween()方法即可实现。New Tween()方法格式:
new Tween(要应用补间的MC,要应用补间的MC的属性,缓动效果,属性的初始值,属性的结束值,补间的长度,补间长度的类型)
下面介绍一下new Tween()方 ......
网页导航菜单被Flash和播放器等对象挡住看不到,非常头疼。其实在<object>标签中加入以下代码就可解决:
<param name="wmode" value="Opaque">
例如有如下代码:
<object id="player" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" name="player&qu ......