趣味教程:戏说类及对象的初始化

王朝other·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

前言:示例的代码都是由中文写的,不知道大家看得惯不?本想查查词霸,弄几个e文地,但怕词不达意,岂不是贻笑大方~见谅

俺是一个马戏团地,团长让俺安排安排今晚的节目表演。要求嘛,就是第一个上场的演员先要致个开场白什么地,再就是上场的演员都要再做个"我是谁谁谁"的介绍啥地。俺迅速就草就了如下安排程序:

----演员.as----

class 演员{

static var 演员人数:Number =50;

var _知名度:String ="大碗";

var _姓名:String;

function 演员(姓名) {

_姓名 = 姓名;

演员.开幕演说();

自我介绍();

}

static function 开幕演说(){

trace("欢迎各位大虾光临‘维艺--Flash’代码乐园,本乐园有"+演员.演员人数+"位小闪的强大阵容!");

}

function 自我介绍(){

trace("现在由我"+_知名度+_姓名+"给大家表演节目,请大家给我点掌声,好不好?什么?我没听见!再热烈点!");

}

}

然后,俺就开始彩排啦:

----表演.fla ----

(注:第一帧上代码)

彩排(其实就是"测试"哦)的结果非常之糟糕,前面上来的把"欢迎各位大虾"等等罗嗦了一遍,后面上来的又把"欢迎各位大虾"罗嗦了一遍~

不用说俺受到了团长严厉地批评,俺仔细检查了一遍程序后,发现错误出在这一句:

function 演员(姓名) {

_姓名 = 姓名;

演员.开幕演说();

自我介绍();

}

这里的"演员.开幕演说"本应是一个执行一次的方法,因为放到了构造函数里,所以每上来一个演员就罗嗦一通啦。但该把它放到哪里呢?这样吧:

//这里省略若干代码,请参考上面

演员.开幕演说();

function 演员(姓名) {

_姓名 = 姓名;

自我介绍();

}

结果一彩排,犯了众怒,警告我说:

"第 5 行: 类定义中不允许此语句。

演员.开幕演说(); "

我也急了,大声地吼到:"好好好!我不管了!现在我把它从程序里拿掉!由我自己来致欢迎词好啦!"

以后每次表演,就成了这样:

---表演.fla---

(注:第一桢上代码)

演员.开幕演说();//神啊,救救我吧!我真怕自己一时疏忽忘了致开幕词哦~~

var wiyi=new 演员("维艺--Flash");

var lz=new 演员("老张");

var xl=new 演员("小李");

... ...

终于有一天,我忘了致开幕词,挨了团长一顿臭骂,让我给猴子搔痒去! 伤自尊咧~俺就不信处理不了这个演员程序!这是俺再次努力的结果:

class 演员{

static var 演员人数:Number =50;// 初始化类变量.

static var __开幕演说:Boolean = 演员.开幕演说();//初始化类变量,实际上等同于执行类方法.

var _知名度:String ="大碗";//设定对象'知名度'属性的默认值.

var _姓名:String;//声明对象的'姓名'属性.

function 演员(姓名) {

_姓名 = 姓名;//初始化对象的姓名属性.

自我介绍();//执行对象的方法.

}

static function 开幕演说(){

//类方法

trace("欢迎各位大虾光临‘维艺--Flash’代码乐园,本乐园有"+演员.演员人数+"位小闪的强大阵容!");

}

function 自我介绍(){

//对象方法

trace("现在由我"+_知名度+_姓名+"给大家表演节目,请大家给我点掌声,好不好?什么?我没听见!再热烈点!");

}

}

按照这次的演员程序,再次彩排:

---表演.fla---

var wiyi=new 演员("维艺--Flash");

var lz=new 演员("老张");

var xl=new 演员("小李");

... ...

彩排结果显示:

欢迎各位大虾光临‘维艺--Flash’代码乐园,本乐园有50位小闪的强大阵容!

现在由我大碗维艺--Flash给大家表演节目,请大家给我点掌声,好不好?什么?我没听见!再热烈点!

现在由我大碗老张给大家表演节目,请大家给我点掌声,好不好?什么?我没听见!再热烈点!

现在由我大碗小李给大家表演节目,请大家给我点掌声,好不好?什么?我没听见!再热烈点!

哈哈!俺成功了!至于为什么成功,俺在最后的 演员.as 里给出了详细的注释,你自己去看看吧!特别要留心这句哦:

static var __开幕演说:Boolean = 演员.开幕演说();

这是初始化执行类方法的门道所在哦!欢迎大虾不吝赐教、指正!

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航