AS3介面有什麼作用?AS3的介面一直沒怎麼搞懂

時間 2023-02-17 20:20:05

1樓:匿名使用者

很簡單,你有駕駛證,就是司機,你沒駕駛證,就不是司機,管你是男人、還是女人、北方人還是南方人,警察只會把你視為駕駛員和非駕駛員,它們 是以駕駛證這個介面來看待人這種物件。

只要實現了指定介面的類,就可以被視為該介面型別進行處理(因為function名都在介面中宣告了)

用介面是為了不繼承,而用繼承是為了繼承父類的一些方法,比如兩個系統之間通訊,你不可能要求另外乙個系統繼承你這個系統中的類吧,那只能提供介面給對方系統,那麼對方只需要按介面實現返回即要,它內部如何處理,就不用怕受繼承影響了。

反正介面和繼承是不矛盾的東西,各有用途。

2樓:匿名使用者

如果viewport3d類實現了iviewport3d介面,那麼viewport3d類必須實現介面iviewport3d所宣告的所有方法。

例項化viewport3d並呼叫那些方法,但此例項不但作為型別viewport3d,也可以作為介面iviewport3d的型別。

3樓:匿名使用者

比方多個類實現了同一介面,你用的時候關心的是介面去做這件事,而具體是什麼類去做了不用管。

as3的介面一直沒怎麼搞懂

4樓:匿名使用者

實現介面的類 保證有宣告的方法了,這樣呼叫是安全的 比如我限制乙個類的方法傳入的引數只能是某介面型別的 那只要是實現了介面的類例項都可以被傳入到此類中 物件導向程式設計不是從實用性上考慮的 而是從全域性框架上考慮的 使用介面的方式 可以保證。

j**a 中的介面有什麼作用

as3 介面資料型別問題

as3.0 中介面是不是只能被同包的類所使用? 5

as3 中函式的引數 有什麼用?

5樓:匿名使用者

你說的這個函式本身是特殊的,是setter函式,第二種寫法是錯誤的,編譯不會通過。setter函式必須有乙個確定的引數。

關於setter函式,可以檢視幫助文件~

set 定義關鍵字。

用法function set property(newvalue:*)void

語言版本 : actionscript

player 版本 : flash player 9

定義乙個 setter,它是一種在公共介面中作為屬性出現的方法。setter 是一種特殊方法,它設定使用 var 關鍵字宣告的屬性的值。與其它的方法不同,呼叫 setter 時不使用括號 ((這樣 setter 看起來就像是變數。

通過允許建立私有屬性的公共介面,setter 允許您應用資訊隱藏規則。資訊隱藏的好處是:即使私有屬性的基礎實現發生更改,公共介面也會保持不變。

setter 的另乙個優點是它們可在子類中覆蓋,而使用 var 宣告的屬性則不能。

setter 的返回型別必須為 void 或未指定。

可以將 setter 與 getter 相接合來建立讀寫屬性。要建立唯讀屬性,請建立乙個沒有對應 setter 的 getter。要建立只寫屬性,請建立乙個沒有對應 getter 的 setter。

引數property:* set 修改的屬性的識別符號;此值必須與相應 get 命令中使用的值相同。

newvalue:* 要分配的新值。

示例 如何使用示例。

下例通過定義 getter-setter 建立了名為 age 的讀寫屬性。

package

public function set age(x:number):void

} }在指令碼中輸入下面的**:

var myuser:user = new user();

trace(; output: 25

6樓:匿名使用者

1. 應該一樣的,至少一般都設定成相同,例如。,fun)

event的型別一般都定義為mouseevent型別,但是「event」這個名字。

可以隨便起。

2. 這個引數一般好像也沒甚麼用,但是經常用這個屬性來進行對。

引起這個事件的事件源的引用,例如上面的例子 就是對。

「xx」這個影片剪輯(或其他元件)的引用,然後在監聽事件裡最這個影片剪。

輯進行操作,3. 這種寫法好像不行,具體的我沒試驗過,所以也不是很清楚,不過一般都沒。

有這麼寫的 其實也沒這個必要。

4. 這個引數是必須的 但是好像有個預設型別,所以不寫有時候也能通過,具。

體的預設情況是什麼樣的,就不清楚了。

7樓:匿名使用者

初學者會認為。

public var direction:uint = 0;

與private var _dirction:uint = 0;

public function set dirction(dir:uint):void

後者會多餘,又更麻煩!!

其實後者正確名稱是 set/get屬性儲存器。

比如你傳入除數 單純的 var屬性,你傳入0時,沒辦法檢測錯誤,只可以在運算的時候才檢查。

而使用了set/get 儲存器後,就可以在。

private var _dirction:uint = 1;

public function set dirction(dir:uint):void

_dirction = dir;

}在賦值過程中對引數進行使用或判斷,達到乙個嚴謹封裝的要求。

另外 使用單純的var屬性 類內部的屬性名就要使用public暴露給外部,而使用 set/get儲存器則可以使用乙個無相干的名字,提供給外部。

trace(物件例項。屬性名)

物件例項。屬性名 = 值;

隱藏了類的內部細節。

8樓:匿名使用者

第一種定義可以傳入dir引數。

第二種無法傳入引數。

as3中介面靜態方法的問題

9樓:網友

據我所知介面不能有靜態方法,你的書...誰寫的?

靜態方法只能寫在類裡。

10樓:匿名使用者

介面其實也是類的一種,只不過它與類又有所區別罷了。

as3 按鍵是否按下的判斷怎麼弄?

的沒興趣,的我幫你一段 可以直接測試 var child sprite new sprite var bgcolor uint 0x00ccff var size uint 80 0,size,size addchild child clickhandler keydownhandler keyup...

M 2介面和M 2介面有什麼區別

區別如下 1 協議方面 nvme是支援nvme協議的高速ssd,走的是pcle通道,速度超級快。不支援協議,走的是sata通道,和普通的sata介面差不多。則是較為低速的ssd。2 適配方面 nvme固態需要主機板有pcie的介面支援,而普通的固態則不需要。3 介面方面 固態硬碟,如果是sata協議...

耳機3 5介面和USB介面有什麼區別

從實際電氣連線上是沒區別的,都是正負兩根模擬線,區別就只在於外形,一般來說手機用usb口是為了和譯電充電器,資料線合併成統一的介面 3.5mm耳機介面是個圓形的介面,可以接世面上大多數耳機usb介面叫通用序列匯流排介面,長條方形,一般只有電腦上邊才有,可以插u盤 印表機 攝像頭 滑鼠鍵盤等等等等,手...