首頁(yè)常見問題正文

Java培訓(xùn):抽象類的定義規(guī)則是什么?

更新時(shí)間:2022-08-04 來源:黑馬程序員 瀏覽量:

IT培訓(xùn)班

  當(dāng)定義一個(gè)類時(shí),常常需要定義一些成員方法描述類的行為特征,但有時(shí)這些方法的實(shí)現(xiàn)方式是無法確定的。例如,前面在定義Animal類時(shí),shout()方法用于描述動(dòng)物的叫聲,但是不同動(dòng)物的叫聲是不同的,因此在shout()方法中無法準(zhǔn)確地描述動(dòng)物的叫聲。

  針對(duì)上面描述的情況,Java提供了抽象方法來滿足這種需求。抽象方法是使用abstract關(guān)鍵字修飾的成員方法,抽象方法在定義時(shí)不需要實(shí)現(xiàn)方法體。抽象方法的定義格式如下:

abstract void 方法名稱(參數(shù));

  當(dāng)一個(gè)類包含了抽象方法,該類必須是抽象類。抽象類和抽象方法一樣,必須使用abstract關(guān)鍵字進(jìn)行修飾。

  抽象類的定義格式如下:

abstract class 抽象類名稱{
    訪問權(quán)限 返回值類型 方法名稱(參數(shù)) {
        return[返回值];
    }
    訪問權(quán)限 abstract 返回值類型 抽象方法名稱(參數(shù));     //抽象方法,無方法體
}

  從以上格式可以發(fā)現(xiàn),抽象類的定義比普通類多了一些抽象方法,其他地方與普通類的組成基本上相同。

  抽象類的定義規(guī)則如下。

  (1)包含一個(gè)以上抽象方法的類必須是抽象類。

  (2)抽象類和抽象方法都要使用abstract關(guān)鍵字聲明。

  (3)抽象方法只需聲明而不需要實(shí)現(xiàn)。

  (4)如果一個(gè)類繼承了抽象類,那么該子類必須實(shí)現(xiàn)抽象類中的全部抽象方法。

分享到:
在線咨詢 我要報(bào)名
和我們?cè)诰€交談!