大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

面試題首頁 > 設計模式面試題

設計模式常見面試題

001什么是設計模式(Design pattern)?

設計模式(Design pattern)是一種思想,是一套被反復使用的代碼設計經驗總結,專門用于解決特定場景的需求。它提供了在軟件開發過程中面臨的一些問題的最佳解決方案,使用設計模式是為了提高代碼的可重用性、讓代碼通俗易懂,增加代碼可靠性。

002面向對象編程中,都有哪些設計原則?

開閉原則:對擴展開放,對修改關閉。就是如果要修改原有的功能或者是擴展功能,盡量去擴展原有的代碼,而不是修改原來已有的代碼。
里氏替換原則:任何子類對象都應該可以替換其派生的超類對象 。即,子類可以擴展父類的功能,但不要修改父類原有的功能。 也就是說,當一個子類繼承父類后,盡量不要去重寫它原有的方法。
依賴轉置(依賴倒置)原則:要面向接口編程,不要面向實現編程。兩個模塊交互時,都訪問各自接口,而不是具體的實現類。
單一職責原則:一個對象要專注于一種事情,不要讓它擔任太多責任。
接口隔離原則:一個接口盡量只包含用戶關心的內容。就是一個接口不要太龐大。
迪米特法則:如果兩個軟件實體之間不是特別必要,盡量不要讓他們直接通信。而是找個第三方進行轉發,比如使用MQ(消息隊列)。
合成復用原則:如果在“組合/聚合”和“繼承”之間做抉擇時,優先選擇“組合/聚合”。

003設計模式的分類?

創建型模式:用于創建對象的設計模式。一般可以簡化用戶創建對象的過程。其次可以降低耦合度,用戶不需要關心對象具體的創建過程。包含:單例模式、原型模型、工廠模式、建造者模式。
結構型模型:組織對象之間的結構。使其易于擴展等。包括:代理模式、適配器模式、橋接模式、裝飾器模式、外觀模式、享元模式、組合模式。
行為模型:主要用于決定對象如何做出行為包括:模板方法模式、策略模式、命令模式、責任鏈、狀態模式、觀察者模式、中介者模式、迭代器模式、訪問者模式、備忘錄模式、解釋器模式。

004設計模式的作用?

1)提高代碼復用率,降低開發成本和周期;
2)提高代碼可維護性、可拓展性;
3)使代碼更加優雅、更容易被他人理解。

005舉例說明一個符合開閉原則的設計模式的例子?

開閉原則要求你的代碼對擴展開放,對修改關閉。這個意思就是說,如果你想增加一個新的功 能,你可以很容易的在不改變已測試過的代碼的前提下增加新的代碼。有好幾個設計模式是基 于開閉原則的,如策略模式,如果你需要一個新的策略,只需要實現接口,增加配置,不需要 改變核心邏輯。一個正在工作的例子是 Collections.sort() 方法,這就是基于策略模式,遵循 開閉原則的,你不需為新的對象修改 sort() 方法,你需要做的僅僅是實現你自己的 Comparator 接口。

006OOP中的組合、聚合和關聯有什么區別?

如果兩個對象彼此有關系,就說他們是彼此相關聯的。組合和聚合是面向對象中的兩種形式的 關聯。組合是一種比聚合更強力的關聯。組合中,一個對象是另一個的擁有者,而聚合則是指 一個對象使用另一個對象。如果對象 A 是由對象 B 組合的,則 A 不存在的話,B一定不存在, 但是如果 A 對象聚合了一個對象 B,則即使 A 不存在了,B 也可以單獨存在。

目錄

返回頂部
主站蜘蛛池模板: 国产一区二区精品久久 | 亚洲伊人精品综合在合线 | 看一级毛片| 中文字幕精品在线视频 | α片毛片 | 九九爱精品视频 | 久久网免费视频 | 国产成人免费网站在线观看 | 99精品视频在线成人精彩视频 | 久久青草91线频免费观看 | 久久97久久| 亚洲国产成人久久综合区 | 一级一级18女人毛片 | 日韩有码在线播放 | 日本人的色道www免费一区 | 日本一级毛片私人影院 | 国产成人丝袜精品自啪在线 | 日韩一区二区三区中文字幕 | 99国产精品免费视频观看 | 中文字幕 日韩在线 | 国产精品国产精品 | 日韩国产成人资源精品视频 | 婷婷综合亚洲 | 麻豆精品一区二区三区免费 | 四虎精品永久免费 | 国产成人福利在线 | 免费刺激性视频大片区 | 四虎国产精品一区二区 | 最新仑乱免费视频 | 免费黄色福利 | 国产福利不卡视频在免费 | 91亚洲国产在人线播放午夜 | 亚洲视频在线视频 | 国产在线精品一区二区中文 | 奇米第四色网站 | 国产免费人视频在线观看免费 | 国产精品嘿咻嘿咻在线播放 | 天天爆操 | 成人日批视频 | 国产精品免费福利 | 免费一级毛片在线视频观看 |