2013-06-09 6 views
7

Come si definisce un costruttore statico eseguito quando la classe viene inizializzata?Sintassi di Static Constructor in Actionscript-3?

non riesco a farlo bene:

// version a: 
{} 

// version b: 
static {} 

// version c: 
static function Foo() 
{} 

// version d: 
static() 
{} 

// version e: 
() 
{} 

// version f: 
static function Foo():void 
{} 
+0

questo aiuterà ?: http://stackoverflow.com/questions/13783017/as3-static-class-versus- singleton – Cherniv

+0

Sorry no, non c'era un costruttore statico. – n4pgamer

risposta

4

Trovato fuori:

public class Test 
{ 
    public function Test() 
    { 
     trace("normal constructor"); 
    } 

    // static constructor (version a) 
    { 
     trace("static constructor"); 
    } 
} 

Per qualche ragione non c'è dubbio è stato chiesto di costruttore statico in AS-3?


Dave suggerito, ho controllato: inizializzatori Actionscript non hanno nemmeno bisogno di alcuna sintassi:

public class Test extends Sprite 
{ 
    trace("hello world"); 

    public function Test() 
    { 
     trace("constructor"); 
    } 

    trace("bye world"); 
} 
+0

E 'stato chiesto prima altrove su internet; http://manishjethani.com/archives/2008/03/31/static-initializers-in-as3 E penso che sia probabile (ma non posso essere sicuro) che le parentesi graffe siano solo per scopo; potresti fare a meno di loro. – Dave

+0

Hai ragione riguardo le parentesi graffe (vedi modifica). – n4pgamer