自由,平等,開源,分享

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            2 Posts :: 61 Stories :: 3 Comments :: 0 Trackbacks

            多態描述的是同名方法可以根據發送消息的對象傳送參數的不同,采取不同的行為方式的特性。
            面向對象系統中采用多態,大大提高了程序的抽象程度和簡潔性,更重要的是,它最大限度地降低了類和程序模塊之間的耦合性,提高了類模塊的封閉性,使得它們不需了解對方的具體細節,就可以很好地共同工作。
            這一點對程序的設計、開發和維護都有很大的好處。

          1 多態的概念

            多態是指一個程序中同名的不同方法共存的情況。
            這些方法同名的原因是它們的最終功能和目的都相同,但是由于在完成同一功能時,可能遇到不同的具體情況,所以需要定義含不同的具體內容的方法,來代表多種具體實現形式。

            Java 提供兩種多態機制:重載與覆蓋。

          2 方法重載

            在同一類中定義了多個同名而不同內容的成員方法時,我們稱這些方法是重載(Override)的方法。
            重載的方法主要通過形式參數列表中參數的個數、參數的數據類型和參數的順序等方面的不同來區分的。
            在編譯期間,Java 編譯器檢查每個方法所用的參數數目和類型,然后調用正確的方法。

          3 覆蓋

            由于面向對象系統中的繼承機制,子類可以繼承父類的方法。
            但是,子類的某些特征可能與從父類中繼承來的特征有所不同,為了
          體現子類的這種個性,Java 允許子類對父類的同名方法重新進行定義,即在子類中定義與父類中已定義的相同名而內容不容的方法。
            這種多態被稱為覆蓋(Overload)。

            由于覆蓋的同名方法是存在于子類對父類的關系中,所以只需在方法引用時指明引用的是父類的方法還是子類的方法,就可以很容易地把它們區分開來。

          posted on 2008-04-07 22:32 龍震 閱讀(758) 評論(0)  編輯  收藏 所屬分類: 概念,術語,基礎,理解
          主站蜘蛛池模板: 阿拉善左旗| 德清县| 呈贡县| 常山县| 定远县| 沁源县| 苍山县| 本溪| 抚顺县| 渑池县| 治多县| 精河县| 彩票| 云和县| 横峰县| 九江县| 江山市| 漠河县| 敖汉旗| 石家庄市| 石林| 肥西县| 基隆市| 兰州市| 三亚市| 垣曲县| 炉霍县| 新干县| 改则县| 芦溪县| 通海县| 迁安市| 新乡市| 新竹市| 多伦县| 太康县| 德阳市| 兴仁县| 久治县| 高雄县| 昭苏县|