急求,flash代码问题

[复制链接]
查看11 | 回复2 | 2010-5-26 17:18:22 | 显示全部楼层 |阅读模式
package {
import flash.display.Sprite;
public class ClassScope extends Sprite {
public function ClassScope() {
traceThis(); // 输出"Class Instance"
var obj:Object = new Objec
这一段代码中,有几个地方不是很明白的:public override function toString():String {

return "Class Instance";

}

是怎么理解的?现在toString是一个方法?
var obj:Object = new Object(); 中,没有定义Object,是不是在上面继承的类中有?
traceThis.call(new Sprite()); // 输出"Class Instance" 又是怎么理解?
希望高手们可以帮我解答!
不好意思,那代码应该是:
package {

import flash.display.Sprite;



public class ClassScope extends Sprite {



public function ClassScope() {


traceThis(); // 输出"Class Instance"



var obj:Object = new Object();

obj.traceThis = traceThis;

obj.traceThis(); // 输出"Class Instance"



traceThis.call(new Sprite()); // 输出"Class Instance"

}

public override function toString():String {

return "Class Instance";

}



public function traceThis():void {

trace(this);

}

}
}

回复

使用道具 举报

千问 | 2010-5-26 17:18:22 | 显示全部楼层
1.public override function toString():String {
return "Class Instance";
}
是怎么理解的?这个函数的作用是将ClassScope类的父类Sprite中的toString()方法覆盖,也叫重载,也就是说,如果ClassScope类的实例调用toString()方法,那么执行的是public override function toString():String {
return "Class Instance"; }而并非是Sprite类中的toString()。
回复

使用道具 举报

千问 | 2010-5-26 17:18:22 | 显示全部楼层
多看看帮助文件,就懂了,这些代码都是基础的东西。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行