java關鍵字總結

2021-08-27 02:19:28 字數 1410 閱讀 2049

[size=large]關鍵字總結

1. 訪問限定符:用來定義類,屬性 ,構造方法,方法。

public:在乙個工程內均可以用

protect:在同包同類中可以用

預設的:在同包同類中可以被使用

ps:若在不同包中,但為其子類時,預設的引數仍不可用,但是protect的引數則變為可以用的了。

private:在同一類中才可以被使用

具體**如下:

public class a

則在public class b extends a中,qq是不合法的,但是age是合法可用的。因此,protect的使用範圍比預設的大。使用範圍應為:

public>protect>預設的》private

另外,在介面中,其方法和屬性均預設為public,只有這樣別的類才能來接。

子類在重寫父類的方法時不能減小其可見範圍,但是能擴大它的重寫範圍。

this和super

this:

1.代表乙個物件

2. 代表當前所在類中的某一構造方法(在一構造方法中呼叫該類的另一構造方法時可以用this來代替)

3. public class a

public a(string a)

}super:

1.代表當前父類物件,繼承的子類要重寫構造方法時要用super來呼叫父類的構造方法。

2.呼叫父類的構造方法

在建立乙個物件時先把父類的資料傳過來,而後再傳子類模板的資料,因此,在建立子類物件時一定會呼叫父類的構造方法。

所以,在呼叫時會先檢測父類中是否有宣告,而後再重寫子類的方法,當子類轉型為父類時,其子類的方法就不可用了。

public class c extends a

final:可以用來定義屬性方法和變數

public final class a{} 表示不能被繼承

private final int age=100; 表示只能賦值一次,必須初始化,不能被修改

public final void test(){} 表示不能被重寫

final int age=100; 表示只能賦值一次,必須初始化,不能被修改

static:定義屬性,方法和**塊

public class a 這乙個類所有的物件共同使用的乙個變數指向同乙個位址,因此,在copy模板時不會將靜態屬性或者方法傳過去的

public static void test(){} 表示這個方法的呼叫只和型別相關

static的屬性和方法是不需要物件的,只需要通過類名來呼叫,因此無覆蓋這一說,也就失去了多型性

a.name="aaa";

a.test();

static //在主函式之前執行,來初始化資料

執行的先後順序:

static屬性》static塊》主函式》方法呼叫(這個需要呼叫時才會被使用)[/size]

final關鍵字總結 JAVA

final表示 這是無法改變的 或 最終形態的 含義。它可以修飾非抽象類 非抽象類成員方法和變數。會有可能因為 設計或效率 而被使用。1.final類不能被繼承,沒有子類,final類中的方法預設是final的。2.final方法不能被子類的方法覆蓋,但可以被繼承。3.final成員變數表示常量,只...

static關鍵字 java關鍵字

先按照宣告順序初始化基類靜態變數和靜態 塊,接著按照宣告順序初始化子類靜態變數和靜態 塊,而後按照宣告順序初始化基類普通變數和普通 塊,然後執行基類建構函式,接著按照宣告順序初始化子類普通變數和普通 塊,最後執行子類建構函式。import static com.test.test1.fu.say i...

Java中final關鍵字總結

final可以修飾變數 方法 類。final修飾變數時,如果該變數為基本型別,則該變數的值將不允許改變,如果該變數為物件時,表示該變數引用不可改變。對於final修飾的基本資料型別,該變數在編譯器就已經被賦值。final修飾方法時,表示該方法不允許有多型,即不允許被任何繼承類修改它。fina修飾類時...