天天看點

final關鍵字三種用法筆記

final英文翻譯過來是最終的意思。在Java中final關鍵字可以修飾類,方法,變量。

  • final關鍵字修飾的類該類不能被繼承。
  • final關鍵字修飾的方法不能被子類重寫。
  • final關鍵字修飾的變量時常量,隻能指派一次。

    執行個體1(修飾類):

//Animal類被final關鍵字修飾
public final class Animal {
    void show(){
        System.out.println("我是父類....");
    }
}
//Pig繼承Animal,由于Animal被final關鍵字修飾,編譯會不通過
public class Pig extends Animal {
//編譯器提示Cannot inherit from final 'xxxxx.Animal',會編譯不通過
}
           

    執行個體2(修飾變量):

public class Example01 {
    public final String name = "小花";
    name = "小紅";//再次為name指派編譯會報錯
}
           

    需要注意的是,使用final關鍵字修飾類中的成員變量時,虛拟機不會對該變量進行初始化,是以使用final關鍵字修飾成員變量需要定義時就要賦予一個初始值。

    執行個體3(修飾方法)

//Animal類被final關鍵字修飾
public class Animal
    //show()方法使用final關鍵字修飾
    final void show(){
        System.out.println("我是父類....");
    }
}
public class Pig extends Animal{
    //編譯會報錯
    void show(){
        System.out.println(".....");
    }
}
           

在我們編寫程式時,如果父類中的某個方法不想被子類重寫,我們就可以使用final關鍵字修飾該方法。

1024節日快樂

加油吧!!!