Java 上轉型物件的說明

2021-09-18 05:29:41 字數 628 閱讀 8147

父類宣告,子類例項化的物件就是上轉型物件;

例如:

public class text

}class father

class son extends father

上轉型物件的使用規則:

1、上轉型物件不能呼叫子類新增的成員變數和方法,失去了這部分的屬性和功能;

2、上轉型物件可以操作子類繼承的成員變數(包括因繼承而隱藏的成員變數),也可以使用子類繼承或者重寫的方法;

3、如果子類重寫了父類的某個方法之後,當上轉型物件呼叫這個方法時一定是呼叫了子類重寫的方法;

4、可以將上轉型物件再強制轉換成乙個子類物件,此時物件又具備了子類所有的屬性和功能(即可將上轉型物件還原為子類物件);需要注意的是,不可以將父類建立的物件賦值給子類宣告的物件;

上轉型物件就是擁有一定固定格式的父類物件,但是包含了新的東西(只是暫時不能用),然後可以完成父類物件的工作(甚至在重寫方法後做到更好)。至於不可以將父類建立的物件賦值給子類宣告的物件的問題,我淺薄的認為好比兩個口袋,son的口袋裡的東西裝的比father多,要用的時候取誰的都可以達到目的,但是想要交換兩個口袋,father的口袋太小了就裝不下son的東西,所以不能賦值。

物件的上轉型物件

假設animal類是tiger類的父類,當用子類建立乙個物件,並把這個物件的引用放到父類的物件中時,比如 animal a a new tiger 或 animal a tiger b new tiger a b 這時,稱物件a是物件b的上轉型物件 好比說 老虎是動物 物件的上轉型物件的實體是子類負...

上轉型物件

如果b類是a類的子類或間接子類,當用b類建立物件b並將這個物件b的引用賦給a類物件a時,如 a a a new b ora a b b new b a b 則稱a類物件a是子類b物件b的上轉型物件。物件b的上轉型a的實體是有子類b建立的,但是上轉型物件會失去子類b的一些屬性和功能。上轉型物件具有以下...

Java隨記(二)上轉型物件

假設a類是b類的父類,當用子類建立乙個物件,並把這個物件的引用放到父類的物件中,例如 a a a new b 或a a b b new b a b 這時,稱物件a是物件b的上轉型物件。物件的上轉型物件的實體是子類負責建立的,但上轉型物件會失去原物件的一些屬性和功能。1 上轉型物件不能操作子類新增的成...