Java中的面試題 繼承與類載入

2021-07-23 19:14:45 字數 535 閱讀 5386

有a,b,main三個類如下:

public class a}

public class b extends a

}public class main extends b

private a a = new a();

private b b = new b();

public static void main(string args)

}輸出:

test   ----解釋:main方法是靜態方法,它屬於類main,而不是例項,因此main不用例項化,直接呼叫

如果將main方法改為:

public static void main(string args)

輸出:test

a   -----初始化父類a

b   -----初始化父類b

a   -----初始化屬性 private a a = new a();

a   -----初始化屬性 private b b = new b();

bmain ---- 呼叫建構函式

java面試題 有關於繼承的面試題

面試題 1,方法過載和方法重寫的區別?方法過載能否改變返回值型別?方法過載是在本類內方法的定義一樣,引數型別,引數個數不同,返回值型別不同 方法重寫是指子類的方法定義和父類的方法定義相同。其引數型別,引數個數,返回值型別都必須相同 方法過載能否改變返回值型別,因為與返回值無關。2,this與supe...

Java 類的載入過程(阿里面試題)

載入方法不等於執行方法,初始化變數則會賦值 類載入順序應為 載入靜態方法 初始化靜態變數 執行靜態 塊 例項化時 先載入非靜態方法 例項化非靜態變數 執行構造 塊 執行建構函式 author panteng public class statictest 第六個載入 此時,n已經被初始化 所以列印出...

關於類的載入面試題

1.類的載入 當第一次建立該 類物件的時候,載入到記憶體當中,在載入時,會執行static 2.欄位初始化問題 2.1 靜態字段初始化 是在靜態 塊當中初始化 2.2 非靜態的字段初始化 它是在構造器當中做的初始化 3.子類構造器缺省會呼叫父類的構造器 載入的順序 1 1 2 構造器supercla...