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盤 印表機 攝像頭 滑鼠鍵盤等等等等,手...