日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

11. java 抽象类

發布時間:2025/5/22 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 11. java 抽象类 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

概念

在面向對象的概念中,所有的對象都是通過類來描繪的,但是反過來,并不是所有的類都是用來描繪對象的,如果一個類中沒有包含足夠的信息來描繪一個具體的對象,這樣的類就是抽象類。

在Java中通過abstract關鍵字定義抽象類,如下:

[訪問修飾符] abstract class 類名{.... }

抽象類除了不能實例化對象之外,類的其它功能依然存在,成員變量、成員方法和構造方法的訪問方式和普通類一樣。

由于抽象類不能實例化對象,所以抽象類必須被繼承,才能被使用。抽象類不能使用final修飾。

抽象方法

只包含一個方法名,而沒有方法體,同時使用abstract關鍵字修飾的方法

abstract class 類名{....public abstract 返回值 函數名(參數列表); }

抽象方法必須為public或者protected(因為如果為private,則不能被子類繼承,子類便無法實現該方法),缺省情況下默認為public。

聲明抽象方法會造成以下兩個結果:

  • 如果一個類包含抽象方法,那么該類必須是抽象類。
  • 任何子類必須重寫父類所有的抽象方法,或者聲明自身為抽象類。

抽象類總結

  • 抽象類不能被實例化(初學者很容易犯的錯),如果被實例化,就會報錯,編譯無法通過。只有抽象類的非抽象子類可以創建對象。
  • 抽象類中不一定包含抽象方法,但是有抽象方法的類必定是抽象類。
  • 抽象類中的抽象方法只是聲明,不包含方法體,就是不給出方法的具體實現也就是方法的具體功能。
  • 抽象類的構造方法,類方法(用 static 修飾的方法)不能聲明為抽象方法。
  • 抽象類的子類必須重寫抽象類中的所有抽象方法,除非該子類也是抽象類。
  • 外部抽象類不能使用static修飾,而內部的抽象類允許使用static修飾,使用static修飾的內部類相當于一個外部抽象類,子類繼承的時候使用“外部類.內部類”的形式。
  • 總結

    以上是生活随笔為你收集整理的11. java 抽象类的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。