我的方法func()的參數必須實現兩個不相關的IFoo和IBar接口。有沒有比這更好的方式來聲明另一個接口,僅用於從IFoo和IBar繼承並將該接口用作參數類型的目的?AS3:我如何需要一個方法參數來實現多個接口?
public interface IFooBar extends IFoo, IBar {
}
public function func(arg:IFooBar):void {
}
我開發什麼,我試圖做的Flash Player 9
具體細節:
我寫了旨在幫助班一個小型圖書館我在開發Flash遊戲。爲了調試和比賽結果的確認有助於圖書館要求用戶拆分遊戲分爲以下幾個部分:
- rawInputProducer:無論從閃存輸入事件主要生產設備輸入事件,保存從以前的會話事件,或者一些其他源
- rawInputProcessor:偵聽到設備的輸入,並從中產生用戶命令
- gameController:偵聽到用戶命令,並更新遊戲狀態
- gameView:偵聽到遊戲從gameController狀態變化並更新階段
所有這些組件都會生成事件(稱爲'消息',不會將它們與Flash事件混淆)。類Engine
啓動組件並運行主循環。
爲了允許組件儘可能通用Engine
只需要它們實現IMessageDispatcher
和ITickable
。我將要編寫只有IMessageDispatcher
或只有ITickable
的課程。我也有一個通用MessageDispatcher
,實現IMessageDispatcher
,我的組件可能會擴展。
原來的問題對於我怎樣才能聲明的方法如下所示:
Engine.setGameController(controller: ITickable & IMessageDispatcher):void
正如@maxmc所指出的那樣,它應該是'public interface IFooBar extends IFoo,IBar {',''implements' – Amarghosh 2010-05-04 09:22:15