国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > WEB開發 > 正文

1.18.接口的定義和實現

2024-04-29 18:53:29
字體:
來源:轉載
供稿:網友
1.18.1.問題
我想創建一個接口,并創建一個組件實現這個接口。
1.18.2.解決辦法
創建一個ActionScript文件,申明此文件為一個接口,定義此接口需要的任意方法。要實現此接口,在定義類時使用implements關鍵字。
1.18.3.討論
接口是一個很強大的工具,它描述一個契約,所有實現它的類都必須完全按照接口所定義的方法包括作用域,名稱,參數和返回值保持一致。反過來使用此對象的組件希望這組方法已存在,這樣只需要創建一個輕量級的類申明而不需要創建一個新類來破壞你的繼承樹關系。

實現接口的類也被認為是接口類型,這常被用來設置方法參數的類型或者方法的返回類型,例如:
+展開
-ActionScript
public function pay(payment:IPaymentType):IReceipt

這個方法接受實現IPaymentType接口的任何對象,以及返回實現IReceipt接口的對象。

接口中不能定義方法體以及任何變量,在下面的代碼片段中,IDataInterface 申明和定義了5個方法,任何實現此接口的對象都必須定義這些方法:
+展開
-ActionScript
package oreilly.cookbook {
public interface IDataInterface {
function set dataType(value:Object):void ;
function get dataType():Object;
function update():Boolean; 
function write():Boolean;
function readData():Object;
}
}

要實現這個接口,申明類并添加implements標記到類申明中,所有接口中定義的方法都必須被實現。在下面的代碼中,所有接口方法被包含進來并提供函數體:
+展開
-ActionScript
package oreilly.cookbook {
import flash.events.EventDispatcher;
import flash.events.IEventDispatcher;
public class ClientData extends EventDispatcher implements IDataInterface {
private var _dataType:Object;
public function ClientData(target:IEventDispatcher=null){
super (target);
}
public function set dataType(value:Object):void {
_dataType = value;
}
public function get dataType():Object {
return _dataType;
}
public function update():Boolean {
//do the actual updating
var updateSuccessful:Boolean; 
if (updateSuccessful) { return true ; }
else { return false ; }
}
public function write():Boolean {
var writeSuccess:Boolean;
if (writeSuccess) { return true ; }
else { return false ; }
}
public function readData():Object {
var data:Object;
//get all the data we need
return data;
}
}
}

如果在MXML中實現一個接口,在頂層的組件中使用implements,例如:
+展開
-XML
<mx:HBox xmlns:mx="http://www.adobe.com/2006/mxmlwidth="400height="300implements="IDataInterface">
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 丹寨县| 广宗县| 宾川县| 鹤山市| 淮南市| 新干县| 始兴县| 永和县| 美姑县| 同德县| 伊通| 资讯 | 平谷区| 盐源县| 甘谷县| 和政县| 泰和县| 宜黄县| 九龙坡区| 比如县| 光山县| 黑河市| 若羌县| 友谊县| 克拉玛依市| 新郑市| 阿勒泰市| 昆山市| 海阳市| 云南省| 海门市| 驻马店市| 依安县| 四川省| 鹤山市| 庆元县| 三都| 焦作市| 兴义市| 贵港市| 漯河市|