隨筆 - 19  文章 - 0  trackbacks - 0
          <2012年8月>
          2930311234
          567891011
          12131415161718
          19202122232425
          2627282930311
          2345678

          常用鏈接

          留言簿

          隨筆檔案

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          面試題:請說說抽象類和接口的區(qū)別


          抽象類,使用abstract關(guān)鍵字修飾的類為抽象類,一般來說,含有抽象方法的類就需要定義為抽象類,但是抽象類不一定都有抽象方法,比如,在GUI當(dāng)中,對于事件處理提供了很多監(jiān)聽器口里里面方法都是抽象的,每次進行事件處理時,都需要實現(xiàn)監(jiān)聽器接口,哪怕只處理一個簡單的動作,也需要實現(xiàn)接口所有的方法,這樣很麻煩,而且顯得代碼很臃腫,Java提供了適配器,適配器就是自己實現(xiàn)了監(jiān)聽器接口,但是所有的方法都是空實現(xiàn),以后再用到監(jiān)聽器時,我們可以繼承適配器,實現(xiàn)我們需要的方法就可以了,這樣就很方便。像這樣的適配器只是給調(diào)用者提供一個方便,一定不希望別人直接創(chuàng)建實例來使用,所以有必要將它定義為abstract抽象的。

          接口,接口是一種特殊的抽象類,接口中所有的方法都是抽象的,通常來講,我們使用接口作為一種協(xié)議,起到各模塊之間的銜接作用。由于Java中只支持單繼承,不支持多繼承,但是可以實現(xiàn)多個接口,原因在于接口中所有的方法都抽象,子類繼承哪個都無所謂,我們讓一個類實現(xiàn)多個接口,就可以做到將一個子類對象當(dāng)做多種父類類型來使用,所以我認(rèn)為定義接口就是為了更好地實現(xiàn)多態(tài),因為多態(tài)就是把子類當(dāng)做父類來用.

           

          posted on 2012-08-07 01:01 、小細(xì) 閱讀(71) 評論(0)  編輯  收藏

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


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 漯河市| 祁门县| 台南市| 兴国县| 西贡区| 南平市| 东兰县| 香河县| 如皋市| 射阳县| 上杭县| 萍乡市| 玉山县| 彰武县| 辽宁省| 怀仁县| 买车| 贡嘎县| 来宾市| 玉林市| 轮台县| 大方县| 伊金霍洛旗| 常熟市| 奇台县| 齐河县| 正蓝旗| 冕宁县| 东乌珠穆沁旗| 通榆县| 麻江县| 唐山市| 缙云县| 西华县| 清水县| 洛浦县| 尖扎县| 甘孜| 台中县| 阿鲁科尔沁旗| 建德市|