日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

11. java 抽象类

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

概念

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

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

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

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

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

抽象方法

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

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

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

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

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

抽象類總結

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

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

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