程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> JAVA多態,java多態性

JAVA多態,java多態性

編輯:JAVA綜合教程

JAVA多態,java多態性


多態通過分離做什麼和怎麼做,從另一個角度將接口和實現分離開來。

繼承允許將對象視為它自己本身的類型活基類型來加以處理。

 

方法調用綁定

綁定: 將一個方法調用同一個方法主體關聯起來。

前期綁定:在程序執行前進行綁定(如果有的話,由編譯器和連接程序實現)。

後期綁定(也叫動態綁定或運行時綁定):在運行時根據對象的類型進行綁定(在執行期間判斷所引用對象的實際類型,根據其實際的類型調用其相應的方法)

 

Java中前期綁定的方法有:

   

static方法(構造方法屬於static方法,只不過static聲明是隱士的),

final方法(private方法屬於final方法)

  •       final方法可以防止其他人覆蓋該方法。final方法可以有效的“關閉”動態綁定。

(任何域訪問操作都是由編譯器解析的,因此也不是多態)

 

方法調用的順序

屬性、方法、構造方法和自由塊都是類中的成員,在創建類的對象時,類中各成員的執行順序:

   

1. 父類靜態成員和靜態初始化快,按代碼出現的順序依次執行。
2. 子類靜態成員和靜態初始化塊,按代碼出現的順序依次執行。
3. 父類的實例成員和實例初始化塊,按代碼出現的順序依次執行。
4. 父類的構造方法(如果沒有明確指出調用某個父類的構造器,就會默認調用父類默認構造器,如果不存在默認構造器,編譯器會出

     錯)
5. 子類實例成員和實例初始化塊,按代碼出現的順序依次執行。
6. 子類的構造方法。

(出處:lgfeng218)

 

編寫構造器的一條有效准則:(Java編程思想第四版中文P163)

“用盡可能簡單的方法使對象進入正常狀態,如果可以的話,避免調用其他方法”,在構造器內唯一能夠安全調用的哪些方法是基類中的final方法。

 

多態

多態的條件

   

1. 要有繼承

2. 要有重寫

3. 父類引用指向子類對象

 

多態的作用:消除類之間的耦合關系。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved