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