上轉型物件是將子類的物件賦值給父類的引用,形如:
superclass sup = new subclass();
屬性,私有方法、靜態方法、final方法都是靜態繫結的,即編譯期確定的。
其他方法是動態繫結的,即虛擬機器執行時確定。
後者才可能出現override的情況。
1 上轉型物件不能操作子類新增的成員變數(失掉了這部分屬性),不能使用子類新增的方法(失掉了一些功能)。
2 上轉型物件可以操作子類繼承或重寫的成員變數,也可以使用子類繼承的或重寫的方法。3 如果子類重寫了父類的某個方法後,當物件的上轉型物件呼叫這個方法時一定是呼叫了這個重寫的方法,因為程式在執行時知道,這個上轉型物件的實體是子類建立的,只不過損失了一些功能而已。
如圖示:
J2SE 物件導向
public static void main string args throws exception 資料型別 容量從小到大基本型別 byte short char int long float double boolean不能相互轉換 容量小的自動轉換為大的 容量大的轉換為小的時需加上強制轉換...
J2SE 物件導向總結
物件導向,即oo。我將物件導向的內容分為兩部分,一部分是物件導向的思想精髓,另一部分是物件導向在機器記憶體中的具體實現。下面是我的總結 檢視導圖中更詳細內容 這裡,我們重點對比總結以下內容 類和物件 1.從定義上 類是乙個概念,是乙個模板,規定了一類具有共同特點的物件。物件是是乙個例項,是類例項化的...
J2SE自學(八) 物件導向之封裝
1 size large 封裝定義 隱藏屬性,方法與方法實現細節的過程稱為封裝 這個定義並不是很準確,但是可以這樣去理解 可以從兩個方面理解 1 隱藏屬性和方法。2 隱藏方法實現細節過程。size 補充 color red size large 封裝的優點 1 隱藏類的實現細節 2 讓使用者只能通過...