繼承中,呼叫子類構造方法,父類的連鎖反應

2021-09-24 20:16:17 字數 1057 閱讀 1117

前面測試過繼承會持續呼叫父類的無參構造

這次的情況:

1、子類:

-----------無參構造: 第一行 super關鍵字 指向父親類帶參構造

--------------輸出 字串: sssssss

package com.extend;

public

class

sonextends

f1public

static

void

main

(string[

] args)

}}

2、父親類:

-----------帶參構造

-----------輸出 字串:父親類帶參構造

package com.extend;

public

class

f1extends

f}

3、爺爺類:

-----------無參構造

-----------輸出 字串:爺爺類無參構造

-----------帶參構造

-----------輸出 字串:爺爺類帶參構造

package com.extend;

public

class

fpublicf(

int n)

}

執行子類主方法:

爺爺類的無參構造

父親類的帶參構造

兒子類的無參構造

process finished with exit code 0

1、

呼叫子類無參構造,

如果沒有用super重新指向,ps:super語句要放在第一行;

則預設呼叫父類的無參構造,且先執行父類的無參構造

2、即使中間使用了super也不影響預設規則

3、是先執行父類構造方法再往下執行。

4、尋找到自定義的根部的父類就不再網上繼續尋找了

子類繼承和呼叫父類的構造方法

1.如果子類沒有定義構造方法,則呼叫父類的無引數的構造方法,2.如果子類定義了構造方法,不論是無引數還是帶引數,在建立子類的物件的時候,首先執行父類無引數的構造方法,然後執行自己的構造方法。3.如果子類呼叫父類帶引數的構造方法,可以通過super 引數 呼叫所需要的父類的構造方法,切該語句做為子類構...

子類繼承和呼叫父類的構造方法

1.如果子類沒有定義構造方法,則呼叫父類的無引數的構造方法,2.如果子類定義了構造方法,不論是無引數還是帶引數,在建立子類的物件的時候,首先執行父類無引數的構造方法,然後執行自己的構造方法。3.如果子類呼叫父類帶引數的構造方法,可以通過super 引數 呼叫所需要的父類的構造方法,切該語句做為子類構...

Swift子類構造方法呼叫父類構造方法

swift 中子類init呼叫父類的init方法必須寫在最後。如下例項 子類chemistry中init構造方法呼叫父類的init方法完成屬性初始化,呼叫的父類init方法super.init physics physics 必須寫在方法最後一句,否則報錯 class subjects func u...