黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學(xué)習(xí)攻略 職業(yè)指南 2023年瘋狂推薦的Java設(shè)計模式面試題目

2023年瘋狂推薦的Java設(shè)計模式面試題目

更新時間:2023-01-29 15:45:21 來源:動力節(jié)點 瀏覽1261次

一、什么是設(shè)計模式

設(shè)計模式,是一套被反復(fù)使用、多數(shù)人知曉的、經(jīng)過分類編目的、代碼設(shè)計經(jīng)驗的總結(jié)。使用設(shè)計模式是為了可重用代碼、讓代碼更容易被他人理解、保證代碼可靠性、程序的重用性。

二、設(shè)計模式分類

創(chuàng)建型模式,共五種:工廠方法模式、抽象工廠模式、單例模式、建造者模式、原型模式。

結(jié)構(gòu)型模式,共七種:適配器模式、裝飾器模式、代理模式、外觀模式、橋接模式、組合模式、享元模式。

行為型模式,共十一種:策略模式、模板方法模式、觀察者模式、迭代子模式、責(zé)任鏈模式、命令模式、備忘錄模式、狀態(tài)模式、訪問者模式、中介者模式、解釋器模式。

三、設(shè)計模式的六大原則

開放封閉原則(Open Close Principle)

原則思想:盡量通過擴展軟件實體來解決需求變化,而不是通過修改已有的代碼來完成變化

描述:一個軟件產(chǎn)品在生命周期內(nèi),都會發(fā)生變化,既然變化是一個既定的事實,我們就應(yīng)該在設(shè)計的時候盡量適應(yīng)這些變化,以提高項目的穩(wěn)定性和靈活性。

優(yōu)點:單一原則告訴我們,每個類都有自己負(fù)責(zé)的職責(zé),里氏替換原則不能破壞繼承關(guān)系的體系。

里氏代換原則(Liskov Substitution Principle)

原則思想:使用的基類可以在任何地方使用繼承的子類,完美的替換基類。

大概意思是:子類可以擴展父類的功能,但不能改變父類原有的功能。子類可以實現(xiàn)父類的抽象方法,但不能覆蓋父類的非抽象方法,子類中可以增加自己特有的方法。

優(yōu)點:增加程序的健壯性,即使增加了子類,原有的子類還可以繼續(xù)運行,互不影響。

依賴倒轉(zhuǎn)原則(Dependence Inversion Principle)

依賴倒置原則的核心思想是面向接口編程.

依賴倒轉(zhuǎn)原則要求我們在程序代碼中傳遞參數(shù)時或在關(guān)聯(lián)關(guān)系中,盡量引用層次高的抽象層類,

這個是開放封閉原則的基礎(chǔ),具體內(nèi)容是:對接口編程,依賴于抽象而不依賴于具體。

接口隔離原則(Interface Segregation Principle)

這個原則的意思是:使用多個隔離的接口,比使用單個接口要好。還是一個降低類之間的耦合度的意思,從這兒我們看出,其實設(shè)計模式就是一個軟件的設(shè)計思想,從大型軟件架構(gòu)出發(fā),為了升級和維護方便。所以上文中多次出現(xiàn):降低依賴,降低耦合。

例如:支付類的接口和訂單類的接口,需要把這倆個類別的接口變成倆個隔離的接口

迪米特法則(最少知道原則)(Demeter Principle)

原則思想:一個對象應(yīng)當(dāng)對其他對象有盡可能少地了解,簡稱類間解耦

大概意思就是一個類盡量減少自己對其他對象的依賴,原則是低耦合,高內(nèi)聚,只有使各個模塊之間的耦合盡量的低,才能提高代碼的復(fù)用率。

優(yōu)點:低耦合,高內(nèi)聚。

單一職責(zé)原則(Principle of single responsibility)

原則思想:一個方法只負(fù)責(zé)一件事情。

描述:單一職責(zé)原則很簡單,一個方法 一個類只負(fù)責(zé)一個職責(zé),各個職責(zé)的程序改動,不影響其它程序。 這是常識,幾乎所有程序員都會遵循這個原則。

優(yōu)點:降低類和類的耦合,提高可讀性,增加可維護性和可拓展性,降低可變性的風(fēng)險。

四、解釋Java設(shè)計模式的優(yōu)勢?

設(shè)計模式可在多個項目中重復(fù)使用。

設(shè)計模式提供了有助于定義系統(tǒng)體系結(jié)構(gòu)的解決方案。

設(shè)計模式記錄了軟件工程經(jīng)驗。

設(shè)計模式為應(yīng)用程序的設(shè)計提供了透明度。

由于它們是建立在專家軟件開發(fā)人員的知識和經(jīng)驗之上的, 因此它們得到了驗證和充分證明。

五、什么是四人幫(GOF)?

1994年, 四位作者Erich Gamma, Ralph Johnson, Richard Hel和John Vlissides出版了一本書, 標(biāo)題為”可重用的面向?qū)ο筌浖脑O(shè)計模式元素”。本書介紹了軟件開發(fā)中設(shè)計模式的概念。

這四位作者被稱為”四個GOF的幫派”。

六、什么是創(chuàng)作模式?

創(chuàng)新設(shè)計模式與創(chuàng)建對象的方式有關(guān)。在實例化類時做出決定時, 將使用創(chuàng)建設(shè)計模式。

EmpRecord e1 =新的EmpRecord();

由于new關(guān)鍵字用于在Java中創(chuàng)建對象, 因此, 這里我們使用new關(guān)鍵字創(chuàng)建實例。在某些情況下, 必須根據(jù)程序的性質(zhì)更改對象的性質(zhì)。在這種情況下, 我們應(yīng)該使用創(chuàng)新的設(shè)計模式來提供更通用, 更靈活的方法。

七、什么是工廠模式?

它是Java中最常用的設(shè)計模式。

這些設(shè)計模式屬于創(chuàng)建模式, 因為該模式提供了創(chuàng)建對象的最佳方法之一。

在Factory模式中, 我們不向客戶端公開創(chuàng)建邏輯, 而不會使用標(biāo)準(zhǔn)接口引用創(chuàng)建的對象。

工廠模式允許子類選擇要創(chuàng)建的對象的類型。

工廠模式也稱為虛擬構(gòu)造函數(shù)。

以上就是“2023年瘋狂推薦的Java設(shè)計模式面試題目”,你能回答上來嗎?如果想要了解更多的Java面試題相關(guān)內(nèi)容,可以關(guān)注動力節(jié)點Java官網(wǎng)。

提交申請后,顧問老師會電話與您溝通安排學(xué)習(xí)

免費課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 黄色小视频在线免费看 | 日韩伦理在线播放 | 国产不卡精品一区二区三区 | 大柠檬导航香蕉导航巨人导航 | 日本国产美国日韩欧美mv | 黄色大片免费看 | 波多野结衣一区二区在线 | 波多结衣一区二区三区 | 免费黄色毛片 | 国产又黄又湿又刺激不卡网站 | xxxxx日本护士xxxhd| 一本大道香蕉大无线视频 | 牛牛精品 | 成人三级黄色片 | 日韩免费影视 | 国产成人高清亚洲一区久久 | 欧美精品成人一区二区在线观看 | 久久精品最新免费国产成人 | 日本道综合一本久久久88 | 欧美中文在线视频 | 天堂亚洲欧美日韩一区二区 | 青青青国产免费线在 | 国产制服丝袜视频 | 欧美成一级 | 噜噜噜狠狠夜夜躁精品 | 第一福利官方导航大全 | 日本黄色www | 中文在线日韩 | 日韩三级中文字幕 | 可以免费看的黄色片 | 欧美日韩国产网站 | 91成人高清在线播放 | 国产a级大片| 人成18亚洲资源在线 | 久青草中文字幕精品视频 | 亚洲成人视屏 | 国产成人精品综合网站 | 夜夜揉揉日日人人视频 | 欧美视频久久 | 一级特色大黄美女播放网站 | 精品中文字幕一区在线 |