最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

無(wú)需看代碼,通俗解釋封裝、繼承、多態(tài)。

2022-04-24 09:37 作者:Tikubook官方頻道  | 我要投稿

類的封裝、繼承、多態(tài)三個(gè)概念,要想說(shuō)清楚,通常都需要使用代碼,這樣會(huì)更到位。

如果沒(méi)有編程語(yǔ)言的基礎(chǔ),要明白這幾個(gè)概念也是可以的,讓我們根據(jù)一個(gè)實(shí)際的例子來(lái)具體說(shuō)明。

在接下來(lái)的例子中會(huì)有三個(gè)類:電水壺類、保溫電水壺類、電茶壺類。

假如徐老師有間公司,銷售的產(chǎn)品是電水壺,這種電水壺有這些主要特點(diǎn):

1 由壺體和壺蓋組成;

2 顏色是銀白色的;

3 有一個(gè)開(kāi)關(guān)可以控制啟動(dòng)燒水;

4?水燒開(kāi)后會(huì)發(fā)出聲音提醒。

按照面向?qū)ο蟮脑O(shè)計(jì)方法,把這個(gè)電水壺稱為「電水壺類」,按照類表達(dá)方式:

1 有兩個(gè)成員變量:壺體和壺蓋;

2 有一個(gè)成員屬性:顏色,它的值等于銀白色;

3 有一個(gè)成員方法:燒水;

4 有一個(gè)成員事件:水已經(jīng)燒開(kāi)會(huì)提醒

其中變量用來(lái)存儲(chǔ)類中的數(shù)據(jù),屬性用來(lái)表達(dá)或修改類的特征,方法用作執(zhí)行類的功能,事件用來(lái)對(duì)外發(fā)送通知,類就是記錄一系列變量、屬性、方法、事件成員的集合。

所有具有這些特征成員的具體產(chǎn)品就叫做這個(gè)類的對(duì)象,這就是面向?qū)ο蟮某绦蛟O(shè)計(jì)理念來(lái)由。

用前面的例子來(lái)講,「電水壺類」是電水壺的產(chǎn)品設(shè)計(jì)規(guī)范,可以理解為這是電水壺的抽象,而具體的單個(gè)電水壺產(chǎn)品就是「電水壺類」的對(duì)象,通常叫做類的實(shí)例。

以上這些描述的就是類的封裝。

假設(shè)某一天,公司想生產(chǎn)一種具有自動(dòng)保溫功能的電水壺,有兩種方案:一是完全重新設(shè)計(jì)一個(gè)新的電水壺,二是在現(xiàn)有電水壺的基礎(chǔ)上增加一個(gè)保溫開(kāi)關(guān)。

顯然,第二種方式更經(jīng)濟(jì),公司把這種新的電水壺稱為保溫電水壺,它增加了一個(gè)特點(diǎn):增加了一個(gè)保溫開(kāi)關(guān),按下開(kāi)關(guān)后可以對(duì)已經(jīng)燒開(kāi)的水進(jìn)行自動(dòng)保溫。按照前面的設(shè)計(jì)方法,由于新電水壺增加了一個(gè)成員,所以不能把它歸納到已有的「電水壺類」里面,但是我們可以建立一個(gè)新的類:「保溫電水壺類」,它在「電水壺類」的基礎(chǔ)上增加了一個(gè)新成員方法,就是保溫,他提供的功能是按下開(kāi)關(guān)就開(kāi)始保溫。

由于它基于「電水壺類」設(shè)計(jì)而來(lái),因此我們把「電水壺類」稱為「保溫電水壺類」的基礎(chǔ)類或父類,把「保溫電水壺類」稱為「電水壺類」的繼承類或子類,它們之間是繼承與被繼承的關(guān)系,繼承類自動(dòng)具有基礎(chǔ)類的所有特征成員。

我們可以把「保溫電水壺」稱為「電水壺」,但是不能把「電水壺」稱為「保溫電水壺」。假設(shè)客戶要買100個(gè)「電水壺」,產(chǎn)品數(shù)量不夠時(shí)我們可以用「保溫電水壺」來(lái)充數(shù),但是客戶要買100個(gè)「保溫電水壺」就絕對(duì)不能用「電水壺」來(lái)充數(shù)。

從程序設(shè)計(jì)的角度來(lái)講,就是可以把一個(gè)數(shù)據(jù)類型為「保溫電水壺類」的對(duì)象賦值到一個(gè)數(shù)據(jù)類型為「電水壺」的變量,但是不允許把一個(gè)數(shù)據(jù)類型為「電水壺」的對(duì)象賦值到一個(gè)數(shù)據(jù)類型為「保溫電水壺類」的變量。

需要注意的是如果把一個(gè)數(shù)據(jù)類型為「保溫電水壺類」的對(duì)象賦值到一個(gè)數(shù)據(jù)類型為「電水壺」的變量,那么這個(gè)變量里面實(shí)際存儲(chǔ)的還是一個(gè)「保溫電水壺類」對(duì)象,并不會(huì)因?yàn)樽兞康臄?shù)據(jù)類型為「電水壺」存儲(chǔ)進(jìn)去的對(duì)象的數(shù)據(jù)類型就也為「電水壺」了。

以上這些描述的就是類的繼承。

讓我們繼續(xù)假設(shè),有一天公司發(fā)現(xiàn)電茶壺的銷路要比電水壺好,同樣有兩種方案:一是完全重新設(shè)計(jì)新的電茶壺,二是修改現(xiàn)有電水壺的燒水功能,將其改為燒茶。

很顯然,第二種方式更經(jīng)濟(jì)實(shí)惠。通過(guò)修改了電水壺的燒水功能,使其去燒茶。

同樣,我們需要定義一個(gè)名為「電茶壺類」的類,然后定義一個(gè)同樣名為「燒水」的方法,實(shí)現(xiàn)為燒茶,該方法覆蓋了「電水壺類」中的原有名為「燒水」的方法,用來(lái)燒茶。

這樣以后調(diào)用「電茶壺類」類的「燒水」方法時(shí),就會(huì)改去燒茶,而不會(huì)去燒水。

需要注意的是:如果把一個(gè)數(shù)據(jù)類型為「電茶壺類」的對(duì)象賦值到一個(gè)數(shù)據(jù)類型為「電水壺」的變量,據(jù)前所述,這個(gè)變量里面實(shí)際存放的還是一個(gè)「電茶壺類」的對(duì)象,因此如果調(diào)用該變量的「燒水」方法,實(shí)際上調(diào)用的還是「電茶壺類」的燒茶功能。

以上這些描述的就是類的多態(tài)。


無(wú)需看代碼,通俗解釋封裝、繼承、多態(tài)。的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
玛纳斯县| 怀安县| 广宁县| 民乐县| 白玉县| 赤城县| 全南县| 永胜县| 山阴县| 新干县| 拉孜县| 嫩江县| 龙门县| 上饶市| 河池市| 湟中县| 交口县| 高青县| 柳州市| 曲松县| 滦南县| 应用必备| 南宫市| 彰武县| 遵义县| 当涂县| 花莲市| 德阳市| 庄河市| 大关县| 洮南市| 安多县| 阜宁县| 丹巴县| 凤城市| 沙洋县| 沙雅县| 克东县| 玉树县| 剑河县| 汉川市|