大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國(guó)咨詢/投訴熱線:400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁(yè) hot資訊 抽象類和抽象方法關(guān)系,看這篇就夠了

抽象類和抽象方法關(guān)系,看這篇就夠了

更新時(shí)間:2020-11-11 17:55:33 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽2123次

在面向?qū)ο蟮母拍钪校械膶?duì)象都是通過(guò)類來(lái)描繪的,但是反過(guò)來(lái),并不是所有的類都是用來(lái)描繪對(duì)象的,如果一個(gè)類中沒(méi)有包含足夠的信息來(lái)描繪一個(gè)具體的對(duì)象,這樣的類就是抽象類。換種方式闡述抽象類就是被abstract修飾的類,包含抽象方法的類就是抽象類,同樣的,使用abstrac關(guān)鍵字修飾的方法就是抽象方法。抽象類和抽象方法乍一看很簡(jiǎn)單,但再仔細(xì)一看又有很多彎彎繞繞,容易誤入歧途。

下面我們就來(lái)帶大家繞開(kāi)這些彎彎繞繞,直擊抽象類和抽象方法的核心內(nèi)容,理清抽象類和抽象方法的關(guān)系:


一、抽象類

抽象類往往用來(lái)表征對(duì)問(wèn)題領(lǐng)域進(jìn)行分析、設(shè)計(jì)中得出的抽象概念,是對(duì)一系列看上去不同,但是本質(zhì)上相同的具體概念的抽象。簡(jiǎn)而言之,抽象類就是被abstract修飾的類,包含抽象方法的類就是抽象類。

通過(guò)abstract方法定義規(guī)范,然后要求子類必須定義具體實(shí)現(xiàn)。通過(guò)抽象類,我們就可以做到嚴(yán)格限制子類的設(shè)計(jì),使子類之間更加通用。(程序的可擴(kuò)展和可維護(hù)性)。抽象類在Java語(yǔ)言中表示的是一種繼承關(guān)系,一個(gè)類只能使用一次繼承關(guān)系。但是,一個(gè)類卻可以實(shí)現(xiàn)多個(gè)接口。

抽象類的特征:

1.抽象類不能實(shí)例化,即不能用new來(lái)實(shí)例化抽象類。

2.抽象類中包含有構(gòu)造方法,但構(gòu)造方法不能用來(lái)new實(shí)例,只能用來(lái)被子類調(diào)用。

3.抽象類中可以包含成員變量,成員方法,靜態(tài)方法,構(gòu)造方法,final 修飾的方法,抽象方法

4. 抽象類只能用來(lái)被繼承。


二、抽象方法

使用abstract修飾的方法,沒(méi)有方法體,只有聲明。定義的是一種“規(guī)范”,就是告訴子類必須要給抽象方法提供具體的實(shí)現(xiàn)。抽象方法一般存在于抽象類或接口中。

抽象方法的特征:

1.抽象方法不允許有方法體,只能以分號(hào)“;”結(jié)尾

2.有抽象方法的類只能定義成抽象類(含有抽象方法的類必須是抽象類)

3.抽象類中可以包含 0 個(gè)或多個(gè)抽象方法

4.抽象方法必須被子類實(shí)現(xiàn)

5.如果子類不能實(shí)現(xiàn)父類中的抽象方法,那么子類也必須是抽象類

三、抽象類和抽象方法的基本用法(什么情況下使用抽象方法和抽象類 )

父類的名稱比較抽象,創(chuàng)建對(duì)象無(wú)意義。

/**

* 抽象類

*/

abstract class Animal {

abstract public void shout(); //抽象方法

public Animal(){

System.out.println("Animal類中的無(wú)參構(gòu)造...");

}

}

class Dog extends Animal {

//子類必須實(shí)現(xiàn)父類的抽象方法,否則編譯錯(cuò)誤

public void shout() {

System.out.println("汪汪汪!");

}

public Dog(){

super();//調(diào)用直接父類的無(wú)參構(gòu)造,系統(tǒng)默認(rèn)調(diào)用(可以省略)

System.out.println("Dog類中的無(wú)參構(gòu)造...");

}

}

class Cat extends Animal {

public void shout() {

System.out.println("喵喵喵!");

}

}

/**

* 如果子類不能實(shí)現(xiàn)父類中的抽象方法,那么子類也必須是抽象類

*/

abstract class Pig extends Animal{

}

/**

* 測(cè)試抽象類

*/

public class TestAbstractClass {

public static void main(String[] args) {

// Animal a = new Animal();//編譯出錯(cuò),抽象類不能實(shí)例化

Animal a1 = new Dog();

a1.shout();

Animal a2 = new Cat();

a2.shout();

}

}


關(guān)于抽象類和抽象方法的講述就到這里,如果你能消化本文中的所有內(nèi)容,那么理清抽象類和抽象方法的關(guān)系問(wèn)題不大。如果你擋不住自己求知的腳步,請(qǐng)觀看本站的Java教程,超全面的Java知識(shí)將充實(shí)你的學(xué)習(xí)生活!


提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)

免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 伊人久久伊人 | 欧美高清日韩 | 久久久久九九 | 99视频久久精品久久 | 香蕉视频成人 | 色在线观看视频 | 欧美一级在线 | 国产一级做a爱免费视频 | 日日躁夜夜躁狠狠天天 | 青青青爽在线视频观看大全 | 婷婷天天| 狠狠一区| 亚洲国产精久久小蝌蚪 | 国产露脸系列magnet | 九九在线精品视频xxx | 青草社区视频 | 国产亚洲精品第一区在线观看 | 在线免费小视频 | 成人a毛片免费视频观看 | 亚洲激情在线看 | 九九热国产精品视频 | 最近中文字幕在线视频1 | 国产精选91热在线观看 | 浮力影院欧美三级日本三级 | 成人国产精品一级毛片天堂 | 男人爱看的网站 | 伊人网综合在线视频 | 999成人国产精品 | 久久草在线看 | 成人免费淫片免费观看 | 欧美一级毛片免费观看 | 久久精品综合免费观看 | jizzjizz中国护士第一次 | 国产日韩欧美综合一区二区三区 | 欧美高清一区二区三区欧美 | 午夜网站在线观看免费网址免费 | 99热99热| 欧美激情一区二区三区中文字幕 | 亚洲精品一区二区伦理 | 久久香蕉国产线看观看式 | 国产一及片|