java面試回顧

2021-08-25 14:14:22 字數 1049 閱讀 2807

最近去一家公司面試,一道筆試題引起了我的思考:

/**

* 測試建立物件前後變數的初始化過程

* @author administrator

* */

public class demo1

static

public demo1(string string)

private static int print(string string)

public static demo1 getd1()

public static void setd1(demo1 d1)

public int getk()

public void setk(int k) public class demo1test }

先別著急看下邊的執行結果,大家可以自己先根據自己的經驗分析解答下。然後再對比看看自己**還沒有掌握。

1:k-j=0

d1是否已經建立:否

非靜態**塊

2:d1-j=1

d1是否已經建立:否

3:j-j=1

d1是否已經建立:是

靜態**塊

4:k-j=2

d1是否已經建立:是

非靜態**塊

5:d2-j=3

d1是否已經建立:是

物件的成員變數值:3

類的靜態物件的成員變數值:1

一、初始化靜態屬性:
1.根據類的靜態變數的預設初始化類變數

2.如果類的靜態變數預設建立物件,則優先執行建立物件

3.執行靜態**塊

二、建立物件:
1.根據物件的成員變數的預設初始化物件成員變數

2.執行非靜態**塊

3.呼叫構造方法

三、疑問與補充:

在靜態變數被初始化之前變數的初始值是什麼?int型預設是0,引用型別的初始值是null…我相信**裡邊還有很多可擴充套件之處,也有很多待挖掘的知識點,希望有興趣或有需要的火雞們多多研究,筆者也希望能與你們共同**,共同成長!

XGBoost面試級別回顧

介紹 xgboost是gb演算法的高效實現,xgboost中的基學習器除了可以是cart gbtree 也可以是線性分類器 gblinear 與gbdt不同之處 xgboost在目標函式中顯示的加上了正則化項,基學習為cart時,正則化項與樹的葉子節點的數量t和葉子節點的值有關。gb中使用loss ...

Java繼承回顧(二)

public class demo2 extends a 不同名的方法 b 同名的方法 class father5 class son5 extends father5 public void print a 什麼是方法重寫 重寫 子父類出現了一模一樣的方法 注意 返回值型別可以是子父類,這個我們學...

Java列舉類回顧

整理一些列舉類的筆記。在jdk1.5之後引入了列舉類關鍵字enum,使得列舉類的建立變得更加簡單明瞭,下面以乙個例子說明 package enum 列舉類理解 author hp public class myseason 3.通過公共方法得到屬性 public string getname pub...