内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

抽象類的作用是什么?

抽象類是用來捕捉子類的通用特性的,是被用來創(chuàng)建繼承層級(jí)里子類的模板?,F(xiàn)實(shí)中有些父類中的方法確實(shí)沒有必要寫,因?yàn)楦鱾€(gè)子類中的這個(gè)方法肯定會(huì)有不同;而寫成抽象類,這樣看代碼時(shí),就知道這是抽象方法,而知道這個(gè)方法是在子類中實(shí)現(xiàn)的,所以有提示作用。

創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站建設(shè)、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的永定網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

一、什么是抽象類

在面向?qū)ο蟮母拍钪?,所有的?duì)象都是通過類來描繪的,但是反過來,并不是所有的類都是用來描繪對(duì)象的,如果一個(gè)類中沒有包含足夠的信息來描繪一個(gè)具體的對(duì)象,這樣的類就是抽象類。

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

由于抽象類不能實(shí)例化對(duì)象,所以抽象類必須被繼承,才能被使用。也是因?yàn)檫@個(gè)原因,通常在設(shè)計(jì)階段決定要不要設(shè)計(jì)抽象類。

父類包含了子類集合的常見的方法,但是由于父類本身是抽象的,所以不能使用這些方法。

在Java中抽象類表示的是一種繼承關(guān)系,一個(gè)類只能繼承一個(gè)抽象類,而一個(gè)類卻可以實(shí)現(xiàn)多個(gè)接口。

二、為什么要用抽象類?抽象類有什么用?

老是在想為什么要引用抽象類,一般類不就夠用了嗎。一般類里定義的方法,子類也可以覆蓋,沒必要定義成抽象的啊。

其實(shí)不是說抽象類有什么用,一般類確實(shí)也能滿足應(yīng)用,但是現(xiàn)實(shí)中確實(shí)有些父類中的方法確實(shí)沒有必要寫,因?yàn)楦鱾€(gè)子類中的這個(gè)方法肯定會(huì)有不同,所以沒有必要再父類里寫。當(dāng)然你也可以把抽象類都寫成非抽象類,但是這樣沒有必要。

而寫成抽象類,這樣別人看到你的代碼,或你看到別人的代碼,你就會(huì)注意抽象方法,而知道這個(gè)方法是在子類中實(shí)現(xiàn)的,所以,有個(gè)提示作用。

三、抽象類和接口的區(qū)別

抽象類

抽象類是用來捕捉子類的通用特性的 。它不能被實(shí)例化,只能被用作子類的超類。抽象類是被用來創(chuàng)建繼承層級(jí)里子類的模板。

接口

接口是抽象方法的集合。如果一個(gè)類實(shí)現(xiàn)了某個(gè)接口,那么它就繼承了這個(gè)接口的抽象方法。這就像契約模式,如果實(shí)現(xiàn)了這個(gè)接口,那么就必須確保使用這些方法。接口只是一種形式,接口自身不能做任何事情。

抽象類和接口的對(duì)比

什么時(shí)候使用抽象類和接口

如果你擁有一些方法并且想讓它們中的一些有默認(rèn)實(shí)現(xiàn),那么使用抽象類吧。如果你想實(shí)現(xiàn)多重繼承,那么你必須使用接口。由于Java不支持多繼承,子類不能夠繼承多個(gè)類,但可以實(shí)現(xiàn)多個(gè)接口。因此你就可以使用接口來解決它。如果基本功能在不斷改變,那么就需要使用抽象類。如果不斷改變基本功能并且使用接口,那么就需要改變所有實(shí)現(xiàn)了該接口的類。假如有一個(gè)接口,五個(gè)實(shí)現(xiàn)類,現(xiàn)在的需求可能要往接口加一個(gè)方法,這樣就要改動(dòng)五個(gè)實(shí)現(xiàn)類,但需求只需要改動(dòng)其中兩個(gè)實(shí)現(xiàn)類,可以再定義一個(gè)抽象類去實(shí)現(xiàn)這個(gè)接口,在抽象類中新增這個(gè)方法,然后其他兩個(gè)實(shí)現(xiàn)類實(shí)現(xiàn)這個(gè)抽象類就好了,或者使用 Java 8 中的新特性,在接口中新增默認(rèn)方法或者靜態(tài)方法。

更多編程相關(guān)知識(shí),請(qǐng)?jiān)L問:編程學(xué)習(xí)!!

網(wǎng)站欄目:抽象類的作用是什么?
鏈接URL:http://www.rwnh.cn/article38/cgggpp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊(cè)、微信小程序、全網(wǎng)營(yíng)銷推廣外貿(mào)建站、做網(wǎng)站建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司
保山市| 潜山县| 三原县| 怀集县| 将乐县| 南昌县| 陕西省| 德清县| 宁晋县| 澄江县| 阜南县| 苍山县| 商都县| 金堂县| 云浮市| 合肥市| 太谷县| 平乐县| 长武县| 三门峡市| 阿瓦提县| 水富县| 通许县| 林芝县| 岐山县| 墨竹工卡县| 临汾市| 宁陕县| 剑河县| 雷山县| 舞钢市| 吴江市| 洪雅县| 漯河市| 资兴市| 苍山县| 佳木斯市| 饶平县| 沁源县| 涟源市| 砀山县|