Java面向?qū)ο笾袑ο蟮母拍罴懊嫦驅(qū)ο蟮娜齻€基本特征是什么,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
創(chuàng)新互聯(lián)建站專注于企業(yè)全網(wǎng)營銷推廣、網(wǎng)站重做改版、上街網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、HTML5、商城開發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為上街等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
面向?qū)ο蠛喎QOO(ObjectOriented),20世紀(jì)80年代以后,有了面向?qū)ο蠓治觯∣OA)、面向?qū)ο笤O(shè)計(OOD)、面向?qū)ο蟪绦蛟O(shè)計(OOP)等新的系統(tǒng)開發(fā)方式模型的研究。
對Java語言來說,一切皆是對象。把現(xiàn)實世界中的對象抽象地體現(xiàn)在編程世界中,一個對象代表了某個具體的操作。一個個對象最終組成了完整的程序設(shè)計,這些對象可以是獨立存在的,也可以是從別的對象繼承過來的。對象之間通過相互作用傳遞信息,實現(xiàn)程序開發(fā)。
Java是面向?qū)ο蟮木幊陶Z言,對象就是面向?qū)ο蟪绦蛟O(shè)計的核心。所謂對象就是真實世界中的實體,對象與實體是一一對應(yīng)的,也就是說現(xiàn)實世界中每一個實體都是一個對象,它是一種具體的概念。對象有以下特點:
對象具有變化的狀態(tài)。
對象具有唯一性。
對象都是某個類別的實例。
一切皆為對象,真實世界中的所有事物都可以視為對象。
例如,在真實世界的學(xué)校里,會有學(xué)生和老師等實體,學(xué)生有學(xué)號、姓名、所在班級等屬性(數(shù)據(jù)),學(xué)生還有學(xué)習(xí)、提問、吃飯和走路等操作。學(xué)生只是抽象的描述,這個抽象的描述稱為“類”。在學(xué)校里活動的是學(xué)生個體,即張同學(xué)、李同學(xué)等,這些具體的個體稱為“對象”,“對象”也稱為“實例”。
面向?qū)ο箝_發(fā)模式更有利于人們開拓思維,在具體的開發(fā)過程中便于程序的劃分,方便程序員分工合作,提高開發(fā)效率。面向?qū)ο蟪绦蛟O(shè)計有以下優(yōu)點。
可重用性:代碼重復(fù)使用,減少代碼量,提高開發(fā)效率。下面介紹的面向?qū)ο蟮娜蠛诵奶匦裕ɡ^承、封裝和多態(tài))都圍繞這個核心。
可擴(kuò)展性:指新的功能可以很容易地加入到系統(tǒng)中來,便于軟件的修改。
可管理性:能夠?qū)⒐δ芘c數(shù)據(jù)結(jié)合,方便管理。
該開發(fā)模式之所以使程序設(shè)計更加完善和強大,主要是因為面向?qū)ο缶哂欣^承、封裝和多態(tài)3個核心特性。
繼承性
如同生活中的子女繼承父母擁有的所有財產(chǎn),程序中的繼承性是指子類擁有父類的全部特征和行為,這是類之間的一種關(guān)系。Java只支持單繼承。
例如定義一個語文老師類和數(shù)學(xué)老師類,如果不采用繼承方式,那么兩個類中需要定義的屬性和方法
語文老師類和數(shù)學(xué)老師類中的許多屬性和方法相同,這些相同的屬性和方法可以提取出來放在一個父類中,這個父類用于被語文老師類和數(shù)學(xué)老師類繼承。當(dāng)然父類還可以繼承別的類型。
學(xué)校主要人員是一個大的類別,老師和學(xué)生是學(xué)校主要人員的兩個子類,而老師又可以分為語文老師和數(shù)學(xué)老師兩個子類,學(xué)生也可以分為班長和組長兩個子類。
使用這種層次形的分類方式,是為了將多個類的通用屬性和方法提取出來,放在它們的父類中,然后只需要在子類中各自定義自己獨有的屬性和方法,并以繼承的形式在父類中獲取它們的通用屬性和方法即可。
提示:C++支持多繼承,多繼承就是一個子類可有多個父類。例如,客輪是輪船也是交通工具,客輪的父類是輪船和交通工具。多繼承會引起很多沖突問題,因此現(xiàn)在很多面向?qū)ο蟮恼Z言都不支持多繼承。Java語言是單繼承的,即只能有一個父類,但Java可以實現(xiàn)多個接口(接口類似于類,但接口的成員沒有執(zhí)行體。詳細(xì)了解可參考《Java接口》一節(jié)),可以防止多繼承所引起的沖突問題。
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。