繼承筆試題

2021-08-02 11:44:31 字數 732 閱讀 8337

父類

class base

public

void

printmessage()

}

子類

class

subextends

base

public

void printmessage()

}

主程式

public

class helloworld

}

結果為:

子類的構造方法中的方法sub

.x=0

父類的構造方法10

子類的構造方法中的方法sub

.x=30

子類的構造方法30

子類的構造方法中的方法sub

.x=40

20

首先1.new sub()時,先實現父類的構造方法,(這裡子類在繼承父類時,重寫了父類方法)所以執行父類構造方法中的列印方法時被替換成了重寫後的方法。

2 .然後父類中的this指的是子類這個物件,還未對x進行賦值,所以列印出來預設為0。

3.然後執行子類sub,先賦值,再執行構造方法,列印出為30.

4.關鍵的一步來了,例項化後的物件並沒有給子類sub而是給了父類base,也就是說例項化的子類又賦給了父類,所以要執行父類的構造方法,x被賦值為20.

筆試 c 筆試題

1 在派生類中通過 base 呼叫基類成員 解析 2 方法重寫使用關鍵字 override 解析 使用virtual和override關鍵字實現方法重寫 3 關於抽象類下面說法錯誤的是 選一項 a 抽象類可以包含非抽象方法 b 含有抽象方法的類一定是抽象類 c 抽象類不能被例項化 d 抽象類可以是密...

C 繼承多型筆試面試題實戰分析

目錄 例題一 例題二 例題三 例題四例題五 include includeusing namespace std class animal virtual void bark 0 protected string name class cat public animal void bark clas...

筆試題 2020華為筆試

i j k p,0測試用例 120,3 12,1 題目描述 乙個矩陣,5 5,取相鄰 二個成員有乙個邊是相同的 的6個,輸入乙個6個成員列表,判斷是否滿足?矩陣成員如下 1,2,3,4,5 11,12,13,14,15 21,22,23,24,25 31,32,33,34,35 41,42,43,4...