2010年2月15日 星期一

static範圍

static的variable or method範圍包括自身及children


 


以下轉自adobe document


靜態屬性與範圍鏈


雖然靜態屬性不繼承,但它們是在定義該屬性之類別及該類別
之任何子類別的範圍鏈內,因此靜態屬性是同時位於其定義類別及任何子類別的「範圍中」。也就是說,靜態屬性可以在定義靜態屬性的類別主體及其任何子類別之
內直接存取。


下列範例修改了上一個範例中所定義的類別,以示範定義於 Base 類別中的靜態 test
變數是在 Extender 類別的範圍中。換句話說,Extender 類別可以存取靜態 test
變數,而不需要以定義 test 的類別名稱做為變數的前置詞。


package 
{
import flash.display.MovieClip;
public class StaticExample extends MovieClip
{
public function StaticExample()
{
var myExt:Extender = new Extender();
}
}
}

class Base {
public static var test:String = "static";
}

class Extender extends Base
{
public function Extender()
{
trace(test); // output: static
}

}

沒有留言:

張貼留言