面向?qū)ο蟮娜齻€基本特征是:封裝、繼承、多態(tài)。
封裝
封裝最好理解了。封裝是面向?qū)ο蟮奶卣髦?,是對象和類概念的主要特性?/p>
封裝,也就是把客觀事物封裝成抽象的類,并且類可以把自己的數(shù)據(jù)和方法只讓可信的類或者對象操作,對不可信的進行信息隱藏。
封裝的優(yōu)點
將變化隔離
便于使用
提高重用性
提高安全性
封裝的缺點:
將變量等使用private修飾,或者封裝進方法內(nèi),使其不能直接被訪問,增加了訪問步驟與難度!
封裝的實現(xiàn)形式
A、使用訪問權(quán)限修飾符private在定義JavaBean時對于成員變量使用private進行修飾,同時對外提供set、get方法使用了private修飾的成員在其他類中不能直接訪問,此時需要使用set、get方法進行。
B、定義一個Java類與Java的方法就是最簡單最常見的面向?qū)ο蟮姆庋b操作,這些操作符合隱藏實現(xiàn)細節(jié),提供訪問方式的思路。
繼承
面向?qū)ο缶幊?OOP)語言的一個主要功能就是“繼承”。繼承是指這樣一種能力:它可以使用現(xiàn)有類的所有功能,并在無需重新編寫原來的類的情況下對這些功能進行擴展。
通過繼承創(chuàng)建的新類稱為“子類”或“派生類”。
被繼承的類稱為“基類”、“父類”或“超類”。
繼承的過程,就是從一般到特殊的過程。
要實現(xiàn)繼承,可以通過“繼承”(Inheritance)和“組合”(Composition)來實現(xiàn)。
在Java語言中,一個類只能單繼承,可以實現(xiàn)多個接口。繼承就是子類繼承父類的特征和行為,使得子類對象具有父類的非private屬性和方法。
類的繼承格式:
通過extends關(guān)鍵字申明一個類繼承另一個類,如
class父類{}
class子類extends父類{}
為什么需要繼承?
減少代碼重復(fù)、臃腫,提高代碼可維護性。
繼承的特性:
子類擁有父類非private的屬性和方法;
子類可以擁有完全屬于自己的屬性和方法(對父類擴展);
Java是單繼承(每個子類只能繼承一個父類);但是Java可以是多重繼承(如A繼承B,B繼承C)。
Super和this關(guān)鍵字:
Super關(guān)鍵字:我們可以通過super關(guān)鍵字來實現(xiàn)子類對父類成員的訪問,引用當前實例對象的父類。
This關(guān)鍵字:指向?qū)嵗龑ο笞约旱囊谩?/p>
多態(tài)
多態(tài)就是同一個接口,使用不同的實現(xiàn),而執(zhí)行不同的操作。
多態(tài)的三個必要條件:
繼承(extends)
重寫(子類重寫父類的同名方法)
父類引用指向子類的對象,如:
子類繼承父類,重寫父類的方法,當子類對象調(diào)用重寫的方法時,調(diào)用的是子類的方法,而不是父類的方法,當想要調(diào)用父類中被重寫的方法時,則需使用關(guān)鍵字super。
以上就是長沙牛耳教育Java培訓機構(gòu)小編介紹的“Java面向?qū)ο竺嬖囶}-特征”的內(nèi)容,希望對大家有幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。
相關(guān)推薦
最新最全java面試題及答案(初級到高級)
史上最全的中高級JAVA工程師面試題及答案匯總
Java高級開發(fā)工程師面試題
2019史上最全java面試題題庫大全800題
哪有資深java工程師面試題