<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    zhrb的空間

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      20 隨筆 :: 0 文章 :: 29 評論 :: 0 Trackbacks

           看了一下java tutorial里面對接口的定義,底下附1:借口是抽取相互之間沒有關系的類的共同特征,而不用去關注類之間的關系。
           我覺得這個是借口和抽象類最關鍵的區別,接口是希望一組沒有層次關系的類之間可以擁有共同的行為,而抽象類作為父類的話,自然希望其子類在邏輯上和父類是有一定的關系的。比如說一個抽象類,bird,里面有fly這個方法。我們現在想設計一架飛機也可以飛,雖然我們可以讓plane這個類繼承bird這個抽象類,但是這兩個完全是風馬牛不相及的東西,自然不應該有繼承關系了。但如果是接口設計的話,我們可以設計出一個flyable的接口,里面定義fly的方法,因為bird和plane都可以飛,所以我們可以讓鳥和飛機類去implement這個flyable的接口,然后各自實現不同的fly的方法。
            java tutorial還有一個例子,比如說商店有若干種商品,各種商品之間一般不會有什么繼承關系,但是現在店主希望管理各種商品,所以店主希望所有的商品都實現一種可以稱為manageable的接口,里面包含用于管理的一些方法和屬性,如價格、索引號這樣的屬性或者設置零售價格這樣的方法。這樣接口就巧妙的將各種不相關的類聯系起來了。如果各種各樣的商品類implement了manageable接口,那么店主只需要面向manageable這個接口就可以管理各種商品了,而不需要考慮各種商品之間是否有什么層次關系。所以接口給編程以極大的靈活性,而常說的面向接口編程大概是這個意思吧。
            Java中還有一些常用街口,比如說comparable接口,任何類只要實現了這個接口,都可以被compare。(好像是這樣,不確定,有錯請指出)。Java中還有什么比較常用的接口呢?
            附2、4個人感覺都是基于1的。不過附3,看不太懂,是什么意思。附4講到了可以通過接口實現多重繼承,不過個人感覺接口志不在此,只是在語法上達到了這樣的效果(編程經驗不豐富,所以想當然這么認為,大家指正一下)
           總結一下,抽象類是一種類是對一組具有相同屬性和方法的邏輯上有關系的事物的一種抽象。而接口則是對一組具有相同屬性和方法的邏輯上不相關的事物的一種抽象。

    附:You use an interface to define a protocol of behavior that can be implemented by any class anywhere in the class hierarchy. Interfaces are useful for the following:

    1.Capturing similarities among unrelated classes without artificially forcing a class relationship
    2.Declaring methods that one or more classes are expected to implement
    3.Revealing an object's programming interface without revealing its class
    4.Modeling multiple inheritance, a feature of some object-oriented languages that allows a class to have more than one superclass

    posted on 2007-10-18 12:10 zhrb 閱讀(1503) 評論(2)  編輯  收藏

    評論

    # re: Java中接口與抽象類的區別(一些學習體會,不知正確與否,請指正) 2007-10-22 11:31 Raylong
    理解的很好,學習一下。Java的接口也突破了單繼承的限制,可以通過implements多個接口實現多重繼承。  回復  更多評論
      

    # re: Java中接口與抽象類的區別(一些學習體會,不知正確與否,請指正) 2009-05-06 22:13 RMM
    不錯,舉得例子很容易理解,多謝啦  回復  更多評論
      


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 四虎成人免费影院网址| 蜜臀98精品国产免费观看| 日本免费网站观看| 亚洲人成网站免费播放| 免费AA片少妇人AA片直播| 亚洲日本va在线观看| 成人特黄a级毛片免费视频| 在线a亚洲老鸭窝天堂av高清| 女人与禽交视频免费看| 亚洲av最新在线观看网址| 亚洲成a人片在线观看老师| 国产免费久久精品99久久| 永久亚洲成a人片777777| 国偷自产一区二区免费视频| 亚洲一卡2卡三卡4卡有限公司| 88av免费观看入口在线| 2020国产精品亚洲综合网 | 亚洲Av高清一区二区三区| 中文字幕av无码无卡免费| 伊人久久亚洲综合影院首页| 免费欧洲美女牲交视频| 国产一级a毛一级a看免费视频| 亚洲成AV人在线播放无码| 99久久久国产精品免费无卡顿| 91在线亚洲综合在线| 亚洲国产成人精品女人久久久 | 亚洲AV综合永久无码精品天堂| 免费大片在线观看网站| a毛片免费在线观看| 亚洲av片不卡无码久久| 又大又硬又爽免费视频| 成人电影在线免费观看| 亚洲AV无码国产精品色| 亚洲AV成人潮喷综合网| 一区二区三区四区免费视频| 亚洲色欲色欲www在线播放| 亚洲免费日韩无码系列| 99精品视频免费观看| 国产亚洲人成在线播放| 亚洲成人在线电影| 四虎国产精品免费视|