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

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

1.18.接口的定義和實現

2024-04-27 13:51:43
字體:
來源:轉載
供稿:網友
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">
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 巴林右旗| 韩城市| 汉沽区| 漠河县| 吕梁市| 叙永县| 建湖县| 湟源县| 宁远县| 永昌县| 东丰县| 溧阳市| 太仓市| 乌兰察布市| 许昌市| 许昌县| 阳原县| 马鞍山市| 天长市| 永吉县| 黄石市| 延庆县| 莱西市| 西吉县| 沂水县| 永清县| 丹东市| 江西省| 黑龙江省| 鞍山市| 平阴县| 靖江市| 青岛市| 屏边| 澄城县| 平度市| 蒙阴县| 崇义县| 罗江县| 罗江县| 铜陵市|