隨筆-208  評論-469  文章-30  trackbacks-0

          抽象類和接口都位于繼承樹的上層,它們具有以下相同點:
          代表系統的抽象層;
          ??? 當一個系統使用一棵繼承樹上的類時,應該盡可能地把引用變量聲明為繼承樹的上層抽象類型,這樣可以提高兩個系統之間的松耦合。

          都不能被實例化;
          都能包含抽象方法。這些抽象方法用于描述系統能提供哪些服務,但不必提供具體的實現。
          抽象類與接口主要有兩大區別:

          ??? (1)在抽象類中可以為部分方法提供默認的實現,從而避免在子類中重復實現它們,提高代碼的可重用性,這是抽象類的優勢所在;而接口中只能包含抽象方法。
          ???
          ??? 擴展功能時,在抽象父類中加入具體方法不會影響子類;但在接口中加入抽象方法會影響到所有實現類。

          ??? (2)一個類只能繼承一個直接的父類,這個父類有可能是抽象類;但一個類可以實現多個接口,這是接口的優勢所在。

          posted on 2006-11-29 00:40 EricWong 閱讀(208) 評論(0)  編輯  收藏 所屬分類: Java
          主站蜘蛛池模板: 鄄城县| 镇平县| 宣恩县| 济宁市| 应用必备| 安乡县| 巩义市| 辰溪县| 乐平市| 华安县| 临城县| 边坝县| 安陆市| 天长市| 张掖市| 嵩明县| 江永县| 泰州市| 新和县| 宁乡县| 武强县| 德庆县| 三河市| 忻城县| 类乌齐县| 如东县| 色达县| 碌曲县| 和林格尔县| 德钦县| 泾源县| 沙河市| 东光县| 扎鲁特旗| 池州市| 乌拉特后旗| 西乌珠穆沁旗| 耒阳市| 东山县| 兰坪| 万宁市|