//------------------------------------------------------------------------------------------------ class HelloWorldApp extends MovieClip { private var txtHelloWorld:TextField; public function HelloWorldApp() { trace( "HelloWorldApp::Constructed" ); } public function main():Void { trace( "HelloWorldApp::main" ); this.createTextField( "txtHelloWorld" , 0 , 0 , 0 , 100 , 20 ); txtHelloWorld.text = "Hello, world!"; } } this.__proto__ = HelloWorldApp.prototype; trace( "this instanceof HelloWorldApp? " + ( this instanceof HelloWorldApp ) ); _global.HelloWorldApp.apply( this , null ); this.main(); //------------------------------------------------------------------------------------------------ //class 中新建内置对象变量方法 db_lv class loadDB { //private var db_lv:LoadVars = new LoadVars(); //错误方法 private var db_lv:LoadVars; public function loadDB(db:String) { var self = this; //获得本对象引用 db_lv = new LoadVars(); db_lv.load(db); db_lv.onLoad = function(success:Boolean) { if (success) { trace(self.funcA); //调用对象引用 } else { trace("error load data"); } }; } private function funcA() { trace("funcA"); } } //------------------------------------------------------------------------------------------------ // 一个类方法可以合法地创建某个类的实例并访问该实例的属性 class SomeClass { private static var obj:SomeClass; private var prop:Number = 10; public static function doSomething ( ):Void { // 创建一个SomeClass的实例并存储在类属性obj中 obj = new SomeClass( ); // 访问存储在obj中实例的属性prop trace(obj.prop); // 显示: 10 } } //------------------------------------------------------------------------------------------------ //在Class中使用setInterval(),主要的关键是在 "参数", 例子: class SuperTomato { function SuperTomato() { setInterval(this, "useInterval", 1000); } function useInterval() { trace("在Class中使用setInterval"); } } //------------------------------------------------------------------------------------------------ // 定义举例 public static var samName:String = "samstudio"; private static var samName:String = "samstudio"; public var samName:String = "samstudio"; var samName:String = "samstudio"; samName:String = "samstudio"; //在声明类名的文件中,类名必须是全限定的;也就是说,它必须反映存储的目录 //例如,若要创建一个名为 RequiredClass 类,该类存储在 myClasses/education/curriculum 目录中,则必须在 RequiredClass.as 文件中声明该类,方式如下: class myClasses.education.curriculum.RequiredClass { } //用 public 或 private 成员属性来指定公共或私有成员 //私有成员,只有声明或定义这些成员的类才能访问它们 class LoginClass { private var userName:String; } //实例成员用法: clip_mc.showInfo(); //类成员用法: var square_root:Number = Math.sqrt(4); //实例成员和类成员,类(静态)方法只能访问类(静态)属性,而不能访问实例属性 static var variableName; //接口只能包含方法(函数)声明,包括参数、参数类型和函数返回类型。 interface MyInterface { function method_1():Void; function method_2(param:String):Boolean; } //隐式获取/设置方法 function get user():String { return userName; } function set user(name:String):Void { userName = name; } //动态类,类的实例就可以添加和访问原类定义中未定义的属性和方法 dynamic class Person { var name:String; var age:Number; }