32點關於Java的瑣碎知識點

2021-08-26 16:46:59 字數 1102 閱讀 6949

1.

對於類中的final型別屬性,一般在宣告的時候直接寫 final int a =1 ;但也可以在建構函式中進行賦值

如:final int a;

a{}( a =1;)

但要注意:需要每乙個建構函式都賦值,且不能巢狀。

而:如果想寫static final int a;則必須在宣告時進行初始化,static final int a = 1;因為靜態的也是不屬於類。

2.繼承中要注意的問題:子類對父類中構造方法的問題

父類的中構造方法不能被繼承,故

class a{}

class b extends a //是錯的,只能用super關鍵字

如果子類中沒有顯示的呼叫super,則系統會加上,super();注意即是找父類中無引數的構造方法,所以,如果父類自己寫了構造方法而導致無引數的已經不存在了,

則會出錯.

3.靜態方法:只屬於類本身,而不是某個物件。它是在類載入的時候,就已經為之分配好記憶體了。這時,並沒有產生這個的物件。而物件只有在new時候才會出現。所以只能把這個變數加個static.這也叫做類變數,與之對應的叫做例項變數。

4.main是靜態的,因為它不是屬於某個類的,而是全域性的。

因此在執行時直接找到main,而不是針對某個類的物件。

如果不是static,則會先產生類的物件。

public:由於其是虛擬機器呼叫,因此必須是public的

static:由於其不必產生物件,因此是static的

5.對於主類的修飾符是default時:表示在同乙個包中可以被訪問。

6.final類不能被繼承。

7.private的方法,只要出了類就不能被訪問,不管是在同乙個包中,還是繼承關係。

預設的訪問許可權都是在這個包中,被繼承也不能被訪問。

protected 方法對以上均適用,但 和 public 方法也有區別

在於:對於不同包中,沒有繼承關係的兩個類而言,在乙個類中使用了另乙個類的物件,則只有public方法可以被訪問,而protected方法不能被訪問。

8.抽象方法的宣告:abstract void promethod(); //不要加大括號

看乙個類是否被實現,不是看{}裡面有沒有**,而是看有沒有{}

瑣碎知識點

13 反射獲取方法所在的類名稱 system.reflection.methodbase.getcurrentmethod declaringtype 12 try catch finally try catch exception ex finally view code sqliteconnec...

python numpy瑣碎知識點

最近在寫python 和c 的呼叫,在python numpy 矩陣傳入c 的時候出現了一些問題,在此記錄一下 numpy矩陣的資料在記憶體中不一定是連續的,可以用flags這個屬性進行檢視 numpy矩陣的記憶體連續分為 c order 連續和 f order 連續 也就是分別對應這c語言和for...

瑣碎知識點 1

createelement 鏈結中有 號 說明 不用註冊,直接使用。關於英語,英語算是乙個基本的技能,你不會就要去學習,很多技術第一手資料都是英文的,如果你等到別人翻譯好,那獲取就滯後了,那就被動了。因此,我特別鼓勵大家去學習英語,用蹩腳的英語去跟老外交流,不要害羞,他們也是可以理解的,同時我自己也...