final修飾符 多型 方法重寫override

2021-09-29 17:07:24 字數 836 閱讀 2499

最終的,終態的,無法改變的

在繼承關係中,有時候父類中的功能方法不行讓子類進行覆蓋式重寫,必須提供乙個關鍵字:final

注意: 父類中並不是所有的功能都必須使用final修飾,某些功能方法需要用final修飾確保功能的安全性

常量的分類:

字面值常量:「hello」,10,13.1,true,『a』,『0』,『a』

自定義常量:public final int num = 10;

final使用中的注意事項:

final修飾變數的初始化時機:

在同一時刻體現出事物的不同狀態

多型的前提條件:

在多型中的成員訪問特點:

成員變數: 編譯看左邊,執行看左邊

構造方法:在多型中,父類物件的建立通過new子類名(),優先讓full進行資料初始化

成員方法:編譯看左,執行看右邊(存在方法重寫)

靜態的成員方法:編譯看左,執行看左;靜態成員方法算不上方法重寫,因為靜態跟類有關

多型的好處:

多型的弊端:多型中無法直接訪問子類的特有功能

如何解決?

必須在多型的第三個前提條件下:

override

子類繼承父類,出現了和父類中一模一樣的方法宣告

特點:在開發過程中,可能需要對父類當前這個方法進行擴充套件,需要重寫父類中的方法

final修飾符和abstract修飾符

用final修飾的類無法被繼承 用final修飾的方法可以被繼承但是不能被重寫 用final修飾的變數表示常量,只能賦值一次 abstract修飾符可以修飾方法也可以修飾類,如果修飾方法,那麼這個方法就是抽象方法,如果修飾類,那麼就是抽象類。抽象類中可以沒有抽象方法,但是如果有乙個類中有抽象方法,那...

final修飾符解析

1.final變數 final變數定義 final變數一經初始化就不能再指向其它物件。在c 中它是乙個const指標,而不是指向const變數的指標,const指標的意思是說它只能一直指向初始化時的那個位址,但那個位址中物件本身是可以修改的。而指向const變數的指標是說物件本身是不能修改的。str...

final 修飾符使用

將以下 copy到eclipse中,可看出效果 用final修飾的方法無法重寫 public class main class maintmp extends main 呼叫 public void getsay 過載 public string say int i,string s 用final修...