面向?qū)ο蟮娜筇匦允鞘裁矗?/span>
來源傳智教育2022年06月01日 14時55分51秒
1.封裝性
面向?qū)ο蟮暮诵乃枷刖褪欠庋b,這里的封裝含義有兩層:第一層含義是把對象的行為和屬性視為一個不可分割的整體,將屬性和行為“封裝”起來(即封裝在對象中);第二層含義是把信息隱藏起來,也就是將不想讓外界知道的信息隱藏。打個比方,我們是用自動洗碗機洗碗,只需要知道這么去操作洗碗機,而不用知道洗碗機的內(nèi)部是怎么工作的。
2.繼承性
類與類之間的關(guān)系,我們叫做繼承,也就是說我們可以直接在原有類的功能上進(jìn)行擴展,不用再重新編寫一個新類。繼承使得開發(fā)效率變高,也增強了代碼的復(fù)用性,減少程序出錯的可能,后期的維護(hù)和擴展十分方便。比方說一個烤箱類,這個類為我們描述了烤箱的普通特性和功能,進(jìn)一步再生產(chǎn)多功能烤箱類,而多功能烤箱類中不僅應(yīng)該包含烤箱類的功能與特性,還應(yīng)該增加多功能烤箱類的特有功能,這個時候我們可以讓多功能烤箱類繼承烤箱類,在多功能烤箱類中單獨添加特性和方法就可以了。
3.多態(tài)性
多態(tài)性意思就是一個類中定義的屬性和方法被其他類繼承后,它們可以表現(xiàn)出不同的行為或者擁有差異化的數(shù)據(jù)類型,如此一來即便是同一個屬性和方法,在不同的類中也會具有不同的語義。舉例,當(dāng)演員和理發(fā)師都聽到cut這個詞的時候,演員的行為是停止表演,而理發(fā)師是剪發(fā),這就是不同的對象存在差異化的表現(xiàn)行為。多態(tài)性使程序更加便捷和抽象,在開發(fā)人員分組協(xié)同開發(fā)設(shè)計程序時非常有利。
最新問答
- 2022年06月30日黑盒測試與白盒測試的區(qū)別是啥?
- 2022年06月30日Hive的安裝模式有幾種?
- 2022年06月29日Flume系統(tǒng)要求是什么?
- 2022年06月29日數(shù)據(jù)發(fā)布與訂閱有哪些主要應(yīng)用場景?
- 2022年06月29日Zookeeper集群角色有哪三種?
- 2022年06月29日hadoop1.x和hadoop2.x的區(qū)別是什么,做了哪些改進(jìn)?
- 2022年06月28日znode有哪兩種節(jié)點?
- 2022年06月28日非全新集群選舉的過程是什么樣的?
- 2022年06月28日applicationmaster是什么?
- 2022年06月28日yarn的工作流程是什么?
相關(guān)問答
- 2022年06月24日同步方法中存在鎖嗎?
- 2022年06月02日本科計算機專業(yè)畢業(yè),想在廣州參加Java培訓(xùn),有什么需要注意的嗎?
- 2022年06月02日廣州java培訓(xùn)價格大概多少?
- 2022年06月02日在廣州想報名一家Java培訓(xùn)機構(gòu),怎么選擇?
- 2022年06月01日error類和exception類有什么區(qū)別?
- 2022年06月01日Java中的繼承概念是什么?
- 2022年06月01日java中類與對象的關(guān)系是什么
- 2022年05月31日java的數(shù)組排序方法是什么?
- 2022年05月24日Java中二進(jìn)制轉(zhuǎn)十進(jìn)制的方法是什么?
- 2022年05月24日零基礎(chǔ)想學(xué)Java很難嗎?