首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Java 類別繼承語法詳解:extends、覆寫與擴充介面

     編輯:Java 相關知識

繼承的核心語法

繼承緊密結合於 Java。建立類別時若無明確繼承,將隱性繼承 Object。繼承語法:在類別主體前放置 extends 關鍵字,後接基底類別名稱,即自動獲得其所有資料成員與方法。

完整範例:Cleanser 與 Detergent

//: Detergent.java
class Cleanser {
    private String s = "Cleanser";
    public void append(String a) { s += a; }
    public void dilute() { append(" dilute()"); }
    public void apply() { append(" apply()"); }
    public void scrub() { append(" scrub()"); }
    public void print() { System.out.println(s); }
    public static void main(String[] args) {
        Cleanser x = new Cleanser();
        x.dilute(); x.apply(); x.scrub(); x.print();
    }
}

public class Detergent extends Cleanser {
    public void scrub() {
        append(" Detergent.scrub()");
        super.scrub(); // 呼叫基底版本
    }
    public void foam() { append(" foam()"); } // 擴充介面
    public static void main(String[] args) {
        Detergent x = new Detergent();
        x.dilute(); x.apply(); x.scrub(); x.foam(); x.print();
        System.out.println("Testing base class:");
        Cleanser.main(args);
    }
} ///:~

關鍵特性解析

  • 字串 += 運算子:Java 針對 String 多載 +=,實現串接
  • 每個類別可擁有 main():便於單元測試,執行 java Detergent 只呼叫 Detergent.main()
  • 存取修飾符策略:欄位設 private,方法設 public(protected 允許衍生類別存取),利於繼承規劃
  • super 關鍵字:解決覆寫方法中呼叫基底版本的遞迴問題(super.scrub())
  • 介面擴充:foam() 展示衍生類別新增方法,擴充基底介面
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved