2010-08-10 12 views

回答

0

你問填充的大多數OO課本多個章節的問題。我想回答這樣的問題最好的辦法是提供資源,因此:

http://en.wikipedia.org/wiki/Interface_(Java)

http://livedocs.adobe.com/flex/3/html/help.html?content=04_OO_Programming_10.html#135768

或者你喜歡的面向對象編程的書。

簡而言之,實現一個接口有點像擴展一個類,除了接口沒有實現你固有的方法,你的類必須自己做。另外,你可以實現多個接口。例如,我可以創建一個抽象類Animal,然後創建一個Flyable和Quackable接口。現在蝙蝠類擴展了動物並實現了Flyable。 Class Duck擴展動物並實現Flyable和Quackable。 DuckCall類還可以擴展Quackable等。您也可以將對象傳遞給基於其接口的方法。

0

我看到它的方式,接口以類似的方式用於電氣連接器:它們定義進出設備的信號,以便您不必關心只要插入的是什麼它尊重這些規則。

例如,拿一個MP3播放器,它的耳機插孔。建立你的MP3播放器的工程師不必關心你將使用什麼樣的耳機,這可能是因爲插孔接口。 他們根據該界面對您的播放器進行編程,然後只要他們的插孔尺寸合適,任何類型的耳機都將工作。他們甚至可以是揚聲器,他們仍然工作(是不是很酷?)。

此外,只要有插孔插頭(它實現了接口),沒有人禁止在插孔插入其他東西。您可以自由地以任何您想要的方式解釋信號,例如,您可以構建改變顏色而不是播放音樂的設備。

OOP接口以類似的方式工作:如果您需要一個作爲方法參數傳遞的對象的接口,調用方可以向您發送該接口的任何實現,並且發送的對象可以解釋調用以他們自己的方式。

0

至少在PHP中,它們基本上只是對對象設置一些限制以使多態性更易於管理的方法 - 也就是說,確保不同類型的對象都可以像鴨子一樣走路。

換句話說 - 只是一種以編程方式確保您的對象具有特定成員和方法的方法,並且如果它們沒有,則會拋出錯誤。

相關問題