IT培訓(xùn)網(wǎng)
IT在線學(xué)習(xí)
繼承是子類復(fù)用父類的屬性和方法的機(jī)制,類的繼承是以生活中繼承為靈感設(shè)計(jì)的。
生活中繼承的例子有很多,例如,汽車的發(fā)展歷程就體現(xiàn)了繼承。最早汽車的輪胎都是實(shí)心的,功能少,性能差,而如今汽車的功能越來越多,性能越來越好,這是經(jīng)過一代一代的發(fā)展而來的,每一代比上一代擴(kuò)充了一些功能,改進(jìn)了一些性能。縱觀整個(gè)汽車的發(fā)展史,每一代汽車都是在上一代汽車的特征和行為的基礎(chǔ)之上,進(jìn)行了設(shè)計(jì)和改良。這其中有些功能沒有改變,有些功能是新增的,也有些功能經(jīng)過了改良。例如,從第一代的汽車到現(xiàn)在的汽車,做交通工具這一特點(diǎn)始終都在沿用。
生活中汽車的例子,與計(jì)算機(jī)中的繼承是非常相似的。這么一代又一代的更新是有好處的。
首先,節(jié)省了設(shè)計(jì)流程,不用閉門造車。
其次,在前一代汽車基礎(chǔ)之上設(shè)計(jì),這樣原來重復(fù)的生產(chǎn)技術(shù)還可以復(fù)用,再設(shè)計(jì)一些新增的功能,這樣就能大大地提高生產(chǎn)效率。
下面介紹一個(gè)實(shí)際案例,來說明繼承的用處。
假設(shè)設(shè)計(jì)一個(gè)師生管理系統(tǒng),具有學(xué)生和教師兩種用戶,需要設(shè)計(jì)兩個(gè)類,一個(gè)學(xué)生類(Student),一個(gè)教師類(Teacher)。Student類有學(xué)號、姓名、性別、年齡、用戶名、密碼等屬性,Teacher類有姓名、性別、年齡、用戶名、密碼、學(xué)歷等屬性,這兩個(gè)類中都有屬性的getter和setter方法。由此可知,這兩個(gè)類中有許多相同的屬性和方法,也就是說代碼有冗余。為了避免這樣的情況,就可以使用繼承來優(yōu)化設(shè)計(jì)。將Student類和Teacher類中相同的屬性和方法抽取出來,單獨(dú)作為一個(gè)父類,這個(gè)父類稱為用戶類(User),而Student類和Teacher類作為子類繼承父類User。Student類和Teacher類中就只放自己特有的屬性和方法即可。由于這兩個(gè)類都繼承User類,因此User類中的屬性和方法,它們可以直接使用。需要指出的是,在繼承中私有屬性和私有方法是不能被繼承的。
繼承提高了代碼的重用性,減少了代碼和數(shù)據(jù)的冗余度。另外,如果要修改用戶名屬性,不采用繼承的情況下,兩個(gè)類的屬性都需要修改,而使用繼承后,只需要修改父類的用戶名屬性即可。由此可知,繼承使代碼的修改更加方便。
>>本文地址:http://m.hqfphsz.com/zhuanye/2020/48513.html
聲明:本站稿件版權(quán)均屬中公教育優(yōu)就業(yè)所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
1 您的年齡
2 您的學(xué)歷
3 您更想做哪個(gè)方向的工作?