面向?qū)ο蟮娜筇匦裕豪^承、封裝、多態(tài)但其實這個說法有問題。面向?qū)ο蟮乃枷肜餂]有任何繼承和多態(tài)的概念,正確的說法是:這三大特性是面向?qū)ο笳Z言的特性,而不是面向?qū)ο罄砟畋旧淼摹?/p>面向?qū)ο笳Z言是面向?qū)ο笤O(shè)計思想的一種實現(xiàn),面向?qū)ο笳Z言為了能在真實世界使用,其必須經(jīng)過一些拓展和妥協(xié),而問題也就隨著這些拓展和妥協(xié)而來。


class?Super?{
??private?int?counter?=?0;
??void?inc1()?{
????counter ;
??}
??void?inc2()?{
????counter ;
??}
}
class?Sub?extends?Super?{
??@Override
??void?inc2()?{
????inc1();
??}
}
你看,子類覆蓋了父類的 inc2 方法,但是這個 inc2 方法依賴于父類 inc1 的實現(xiàn)。如果父類的 inc1 邏輯發(fā)生變化了,變成下面這樣class?Super?{
??private?int?counter?=?0;
??void?inc1()?{
????inc2();
??}
??void?inc2()?{
????counter ;
??}
}
這就會出現(xiàn) stack overflow 的異常,因為出現(xiàn)了無限遞歸。所以,當(dāng)我們在子類里,依賴了父類方法作為子類業(yè)務(wù)邏輯的一個關(guān)鍵步驟的時候,當(dāng)父類的邏輯修改的時候,必須聯(lián)動修改所有依賴父類相關(guān)邏輯的子類,否則就可能引發(fā)嚴(yán)重的問題。用繼承,本來是想少寫點代碼少加點班,結(jié)果……用網(wǎng)上看到的一句話說就是:一日為父,終生是祖宗。像這種情況該怎么辦?現(xiàn)在只要是個正經(jīng)的介紹面向?qū)ο蟮募夹g(shù)文章或者書籍里,只要是涉及到繼承的,都會加這么句話:盡量選擇對象組合的設(shè)計方式。在《阿里巴巴Java開發(fā)手冊》中就有一條:



A?a?=?new?A();
B?b?=?a.getB();
好,我們要問了,這個從 A 中獲取的 B,是 B 對象的實例還是實例的一個引用指針呢?必然是引用指針吧,這是最基礎(chǔ)的知識。諾,問題來了,引用指針是可以修改的。b.getS();?//原來是Hello?World
b.setS("World");//直接改成World
原來 B 中有個字段 s,值是個 “Hello World”,我直接可以用代碼改成“World”。如果這次修改隨意在個犄角旮旯里,A 能知道嗎?A 蒙在鼓里,還以為一切盡在把控當(dāng)中呢。你看,封裝的縫兒出來了吧。說句實話,就這種鬼操作,是非常難以排查的。像這種封裝了,但是又沒封裝的問題,我只想說“封裝的挺好的,下次別封裝了”。根據(jù)交通運輸部水運科學(xué)研究院提出的智慧港口的概念,智慧港口是利用新一代信息技術(shù),將港口相關(guān)業(yè)務(wù)和管理創(chuàng)新深度融合,使港口更加集約、高效、便捷、安全、綠色,創(chuàng)新港口發(fā)展模式,實現(xiàn)港口科學(xué)可持續(xù)發(fā)展。
關(guān)鍵字: 智慧港口 信息技術(shù) 業(yè)務(wù)按企業(yè)主營業(yè)務(wù)類型分,我國智能家居行業(yè)競爭派系可分為傳統(tǒng)家電企業(yè)、互聯(lián)網(wǎng)企業(yè)以及其他企業(yè)三派。傳統(tǒng)家電企業(yè)代表有海爾智家、美的集團(tuán)、格力電器等,具有供應(yīng)鏈和銷售渠道,制造能力和品牌優(yōu)勢突出;互聯(lián)網(wǎng)企業(yè)代表有小米集團(tuán)、百度...
關(guān)鍵字: 智能家居 互聯(lián)網(wǎng)企業(yè) 供應(yīng)鏈軍工電子是集紅外技術(shù)、激光技術(shù)、半導(dǎo)體及嵌入式技術(shù)與虛擬仿真技術(shù)為一體的綜合性軍工技術(shù)體系,是國防信息化建設(shè)的基石。軍工電子行業(yè)包含在軍工行業(yè)內(nèi),專注于軍工行業(yè)電子產(chǎn)品布局。根據(jù)其軍工產(chǎn)品的不同可分為衛(wèi)星導(dǎo)航、通信指揮、...
關(guān)鍵字: 軍工電子 嵌入式技術(shù) 信息化建設(shè)我國汽車零配件行業(yè)細(xì)分種類眾多,從汽車零配件主要產(chǎn)品來看,發(fā)動機系統(tǒng)行業(yè)內(nèi)有濰柴動力、華域汽車等主要從業(yè)企業(yè);在車身零部件領(lǐng)域內(nèi),福耀玻璃、中策橡膠具有一定的規(guī)模優(yōu)勢;行駛系統(tǒng)領(lǐng)域內(nèi)有中策橡膠提供的輪胎以及華為等企業(yè)提供...
關(guān)鍵字: 汽車零配件 發(fā)動機 行駛系統(tǒng)全球液壓行業(yè)專利技術(shù)在21世紀(jì)初得到初步發(fā)展,這一時期液壓專利申請人數(shù)量和申請量處于較低水平。2011-2012年,液壓行業(yè)專利技術(shù)的發(fā)展總體處于成長期,2012年以后中全球液壓行業(yè)專利技術(shù)申請量或申請人數(shù)量整體處于波動...
關(guān)鍵字: 液壓行業(yè) 專利授權(quán) 技術(shù)類型