Java 抽象



章節


Java抽象類和方法

數據抽象是隱藏某些細節,只向用戶顯示基本信息的過程。

抽象可以通過抽象類或接口來實現(你將在下一章詳細了解這些內容)。

abstract關鍵字是一個非訪問修飾符,用於類和方法:

  • 抽象類: 是一個受限制的類,不能用於創建對象(要訪問它,必須通過它的子類對象)。
  • 抽象方法: 只能在抽象類中使用,抽象方法沒有主體,主體由抽象類的子類提供。

抽象類可以有抽象方法和常規方法:

abstract class Animal {
  public abstract void animalSound();
  public void sleep() {
    System.out.println("Zzz");
  }
}

Animal是抽象類,不能創建抽象類的對象:

Animal myObj = new Animal(); // 將報錯

要訪問抽象類,必須通過它的子類。

記住,在繼承一章中介紹過,使用extends關鍵字來繼承類。

示例

// 抽象類
abstract class Animal {
  // 抽象方法(沒有主體)
  public abstract void animalSound();
  // 常規方法
  public void sleep() {
    System.out.println("Zzz");
  }
}

// 子類(繼承Animal)
class Pig extends Animal {
  public void animalSound() {
    // 這里提供了animalSound()的主體
    System.out.println("小豬說: 嗚嗚");
  }
}

class MyMainClass {
  public static void main(String[] args) {
    Pig myPig = new Pig(); // 創建一個Pig對象
    myPig.animalSound();
    myPig.sleep();
  }
}

為什么以及何時使用抽象類和方法?

實現安全性 - 隱藏細節,只對外顯示對象的重要信息。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM