JAVA設計模式之接口模式
-----------模式是思想的體現(xiàn),而非具體的實現(xiàn)。
抽象的講,類的接口是類允許其他類對象訪問的方法與字段集。接口通常代表一種承諾,即方法需要實現(xiàn)接口方法名表示的操作,遵循代碼注釋和其他文檔說明,類的實現(xiàn)就是方
法體中的代碼。
java將接口慨概念提升為獨立的結構,體現(xiàn)了接口(對象必須遵循的承諾)與實現(xiàn)(對象如何履行承諾)的分離。java接口允許多個類提供相同的功能,也允許一個類同時實現(xiàn)多個接口。
java中抽象類與接口的區(qū)別:
1.一個類可以實現(xiàn)多個接口,但卻只能繼承最多一個抽象類。
2.抽象類可以包含具體方法,接口的所有方法都是抽象的。
3.抽象類中可以聲明和使用字段,接口則不能能,但可以創(chuàng)建靜態(tài)的final常量。
4.抽象類中的方法可以是public、protected、private或者默認的package,接口的方法都是public.
5.抽象類可以定義構造函數(shù),接口不能。
java接口的優(yōu)勢在于它限制了對象之間的協(xié)作,這種約束其實提供了更大的自由。即使實現(xiàn)接口的類的實現(xiàn)發(fā)生了巨大變化,接口的客戶端仍然可以不受影響。
小結:
接口的威力在于它描述了在類協(xié)作中它所期望與不期望的行為。接口與抽象類很相似,定義行為卻并不提供實現(xiàn)。