【游客模式】——注册会员,加入11RIA 闪客社区吧!一起见证Flash的再次辉煌……
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
[Actionscript3] 纯文本查看 复制代码 //文档类;
//在文档类中使用clone()方法,并对比前后两个实例的相关属性;
package {
import flash.display.Sprite;
//要导入Events类,因为clone()的副本必须是Event类的实例;
import flash.events.Event;
import son.SampleEvent;
public class doc extends Sprite {
public function doc() {
//定义一SampleEvent类的实例,并给sub属性赋值;
var sam:SampleEvent=new SampleEvent("上课");
sam.sub="数学";
//用clone()方法生成一个sam的副本;
var sam1:Event=sam.clone();
//对比两个实例的属性;
trace("我定义的一个事件:"+sam);
trace("我clone()的一个事件:"+sam1);
trace(sam==sam1);//返回false,说明这两个实例不所不同;
}
}
}
//自定义一个事件:SampleEvent;
package son{
import flash.events.Event;
public class SampleEvent extends Event {
//定义两个常量作业事件的两个不同类型;
public static const START_CLASS:String="上课";
public static const OVER_CLASS:String="下课";
//定义一个属性;
private var _sub:String;
public function SampleEvent(str:String) {
//在super()方法中,传递参数来生成不同类型的事件;
super(str);// constructor code
}
//设置setter和getter方法;
public function set sub(s:String):void{
_sub=s;
}
public function get sub():String{
return _sub;
}
//重写toString()方法,加入两个新属性;
override public function toString():String{
return formatToString("SampleEvent","type","sub","bubbles","cancelable","eventPhase","target","currentTarget");
}
//重写clone方法,生成一个SampleEvent类的实例,并给属性_sub赋值;
//注意:返回值是Event!!
override public function clone():Event{
var sa:SampleEvent=new SampleEvent(START_CLASS);
sa._sub=_sub;
return sa;
}
}
}
|