文章目录

在Mxml中的<mx:Script>中编写AS,要注意的是这段Script最终是会被严格编译成一个Class的,所以在编写这段代码时,也要严格符合类的编写规范.
如下
 <mx:Script>
  <![CDATA[
  import person.Person;
  var person:Person = new Person();
  person.age=27;
  person.name="Kevin";
  ]]>
 </mx:Script>
这样是不行的.
import person.Person;
 var person:Person = new Person();
 person.age=27;
 person.name="Kevin";
这段中 var person:Person = new Person();定义的是一个类的field
这个时候立马去赋值,就类似于java中的static块了,而AS3是不支持static块的,所以立马会编译出错.
可以通过的写法如下
 <mx:Script>
  <![CDATA[
  import person.Person;
   
  private function createPerson():Person{
  var person:Person = new Person();
  person.age=27;
  person.name="Kevin";
  return person;
  }

  ]]>
 </mx:Script>

直接取createPerson()来获得Person;

受JavaScript影响太大,ActionScript可没JS那般灵活哦,ActionScript比JavaScript规范多了.

文章目录