標籤:
本篇主要總結JAVA中的super、this、final、static、break、continue
1、super
super主要用在繼承當中,表示調用父類的建構函式。
1.如果要在子類方法中調用父類被覆蓋的執行個體方法,則可以使用super限定來調用父類被覆蓋的執行個體方法
class B { public B() { } public void C() { System.out.println("B中的C"); }}public class A extends B { public void C() { System.out.println("A中的C"); } public void D() { super.C(); } public static void main(String[] args) { A a = new A(); a.D(); }}輸出結果是:B中的C
2.如果在構造器中使用super,則super用於限定該構造器初始化的是該對象從父類繼承得到的執行個體變數,而不是該類自己的執行個體變數
3.如果父類定義了無參的構造方法,那麼子類可以隨便定義構造方法,系統會自動在構造方法的第一行隱式添加一個super()來調用父類的無參構造方法
class B { public B() { System.out.println("父類的構造方法"); }}public class A extends B { public A() { //super(); 這裡隱式添加了一個super() System.out.println("子類的構造方法"); } public static void main(String[] args) { A a = new A(); }}輸出結果為:父類的構造方法子類的構造方法
如果父類沒有定義無參構造方法,那麼子類只可以定義和父類構造方法的參數列表相同個數的子類構造方法,然後在構造方法中顯式調用父類的super(參數...)
如果父類同時定義了有參的和無參的構造方法,那麼子類可以隨便定義構造方法,並且子類構造方法的第一行可以隨便使用加或者不加參數的super()來調用父類的構造方法
2、this關鍵字
在JAVA中,this關鍵字指向調用該方法的對象。有以下作用
1.調用當前類的屬性和方法
2.調用構造方法
public class People { private String name; private int age; public People(String name, int age) { this(); this.name = name; this.age = age; } public People() { System.out.println("無參構造方法"); } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public void say() { System.out.println(getName() + "-----" + getAge()); } public static void main(String[] args) { People p = new People("王菲", 50); p.say(); }}
3、final關鍵字
1.final在JAVA中被稱為完結器,表示最終的意思
2.final能聲明類、方法和屬性:
使用final聲明的類不能被繼承(類似於古代的太監,哈哈)
使用final聲明的方法不能被重寫
使用final聲明的變數變成常量,不能被修改
4、static關鍵字
static在JAVA中表示靜態,用來修飾方法、成員變數、代碼塊、內部類等(外部類不能使用static)
1.使用static聲明的屬性被成為全域屬性
2.使用static聲明的方法成為靜態方法,可以使用類名直接調用
3. 靜態成員不能直接存取非靜態成員,即使是靜態內部類,也不可以訪問外部類 的非靜態對象
於是我們可以將類層級的變數聲明為static。靜態變數是屬於類的,而不是屬於類建立的對象或執行個體。static經常與final一起使用來修飾一個可供所有對象共同使用的常量資源。
5、break關鍵字
break經常被用在迴圈中,用來結束迴圈,當觸發某個條件後,執行break,程式不再管迴圈是否執行完畢,直接跳出迴圈,執行迴圈下面的代碼
break完全終止迴圈
6、continue關鍵字
continue被用於跳出迴圈,當滿足某個條件後,跳出當前迴圈,執行下一個迴圈。
continue只是跳出本次迴圈,不會終止
JAVA筆記整理(七),JAVA幾個關鍵字