3278 7840

          1100111010001110 1001010010001010

          抽象類

          抽象類

            抽象類與接口緊密相關。然接口又比抽象類更抽象,這主要體現在它們的差別上:1)類可以實現無限個接口,但僅能從一個抽象(或任何其他類型)類繼承,從抽象類派生的類仍可實現接口,從而得出接口是用來解決多重繼承問題的。2)抽象類當中可以存在非抽象的方法,可接口不能且它里面的方法只是一個聲明必須用public來修飾沒有具體實現的方法。3)抽象類中的成員變量可以被不同的修飾符來修飾,可接口中的成員變量默認的都是靜態常量(static final)。4)這一點也是最重要的一點本質的一點"抽象類是對象的抽象,然接口是一種行為規范"。
            以上是它們本身的異同,下面再來從實際應用講講它們的異同!
            不同之處:
            1、定義
            抽象類表示該類中可能已經有一些方法的具體定義,但是接口就僅僅只能定義各個方法的界面(方法名,參數列表,返回類型),并不關心具體細節。
            1、用法
            1)在繼承抽象類時,必須覆蓋該類中的每一個抽象方法,而每個已實現的方法必須和抽象類中指定的方法一樣,接收相同數目和類型的參數,具有同樣的返回值,這一點與接口相同。
            2)當父類已有實際功能的方法時,該方法在子類中可以不必實現,直接引用的方法,子類也可以重寫該父類的方法(繼承的概念)。
            3)而實現 (implement)一個接口(interface)的時候,是一定要實現接口中所定義的所有方法,而不可遺漏任何一個。
            4)另外,抽象類不能產生對象的,但可以由它的實現類來聲明對象。
            有鑒于此,在實現接口時,我們也常寫一個抽象類,來實現接口中的某些子類所需的通用方法,接著在編寫各個子類時,即可繼承該抽象類來使用,省去在每個都要實現通用的方法的困擾。
            

          posted on 2009-06-15 21:36 逍遙晨空 閱讀(143) 評論(0)  編輯  收藏


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


          網站導航:
           
          主站蜘蛛池模板: 兴文县| 大新县| 富阳市| 东辽县| 涞源县| 井冈山市| 丘北县| 旬邑县| 城市| 富源县| 松桃| 彩票| 堆龙德庆县| 金湖县| 化隆| 炎陵县| 浦江县| 顺义区| 定安县| 桂林市| 临汾市| 靖边县| 鄂伦春自治旗| 望谟县| 义乌市| 麻栗坡县| 和平区| 华安县| 侯马市| 惠来县| 杂多县| 塔河县| 华容县| 三门峡市| 自贡市| 昭平县| 巩义市| 修水县| 平乡县| 元氏县| 广南县|