- 論壇徽章:
- 0
|
關于java中接口的認識(不知理解的是否正確)
原帖由 "TAxxjszxlkjf" 發(fā)表:
既然D和E, F相比沒有解耦,也就是說只有在都使用wqzkt類這個前提下才能體現(xiàn)接口的本質(zhì),那接口存在還有什么意義。(我覺得只有一個使用接口如程序D,和一個不使用接口如程序E相比較才能反映出接口的本質(zhì)。)因為E F里沒必要實現(xiàn)
你說對了,只有使用了接口的程序才能看出接口的好處。但是,不是使用了接口,就一定能享受到接口的好處。比如F,就沒有什么好處,因為不是最佳的使用接口的方式!敖怦睢币馕吨坝媒涌诖骖悺保皇墙涌诤皖惒⒋,F(xiàn)那個程序充其量只是演示了一下類到接口的類型轉換的語法而已,沒有任何意義。接口在定義了之后,一定要有一個很好的使用者,比如wqzkt這樣的類,才能看出它的用處;對D和F這兩個類來說(我不是指D程序和F程序),不是發(fā)揮接口優(yōu)勢的類,所以比較D, E, F類是沒有意義的。
---------------------------------
至于說E, F里沒有必要實現(xiàn)wqzkt類,我只能說這個例子里沒有體現(xiàn)wqzkt類存在的必要性。因為這個程序沒有需求。只有在復雜的程序里,多人開發(fā)的環(huán)境中,才能體會到接口的好處。所以在沒有需求的情況下,只是單純的對比D和E是不能看出接口存在的意義的。我是假設wqzkt有存在的意義(抱歉,我無法從這個類的名字看出它的含義),那么最佳的wqzkt類的設計方式是在wqakt類中使用wuqi接口,而不是A, B,C。而你的前提是wqzkt類沒有存在的必要,所以只有在有需求的情況下才能看出wuqi接口的作用。
---------------
其實很多軟件工程的基本概念開始都不是太容易理解。多寫寫程序,參與一些實際的項目,然后就會有更清晰的認識。 |
|