注釋
Java有兩種注釋方法。"/* This is a comment */" 和 "http:// This is a comment"
第一種應(yīng)該被用到寫JavaDoc上,并且都用"/**"開頭。
第二種適合于在做部分代碼的注釋,但只適合做非常短內(nèi)容的注釋。
常見的設(shè)計(jì)模式有哪些?
根據(jù)我在實(shí)際開發(fā)中的經(jīng)驗(yàn),經(jīng)常用的設(shè)計(jì)模式有:工廠模式、單例模式、門面模式、策略模式、適配器模式、建造者模式、觀察者模式。
在我的頭條文章中都有針對這些模式的總結(jié),歡迎各位老鐵關(guān)注查看。這里就進(jìn)行概括說一下:
工廠模式:
工廠模式核心是封裝對象的創(chuàng)建接口,將new對象的操作封裝起來,方便創(chuàng)建使用、管理對象。
工廠模式適用于:
在編碼時(shí)不能預(yù)見需要創(chuàng)建哪種類的實(shí)例。
電銷外呼程序不應(yīng)依賴于產(chǎn)品類實(shí)例如何被創(chuàng)建、組合和表達(dá)的細(xì)節(jié)
分為三類:
簡單工廠模式Simple Factory:不利于產(chǎn)生系列產(chǎn)品;
工廠方法模式Factory Method:又稱為多形性工廠;
抽象工廠模式Abstract Factory:又稱為工具箱,產(chǎn)生產(chǎn)品族,但不利于產(chǎn)生新的產(chǎn)品;
單例模式
基本概念:保證一個(gè)類僅有一個(gè)實(shí)例源碼,并提供一個(gè)訪問它的全局訪問點(diǎn)。
單例模式在實(shí)際的開發(fā)過程中,使用最常見。針對頻繁使用的類,我們可以將它定義為一個(gè)單例來避免類對象頻繁的創(chuàng)建銷毀,提高效率。單例模式有以下特點(diǎn):
單例類只能有一個(gè)實(shí)例
單例類必須自己創(chuàng)建自己的唯一實(shí)例
單例類給其它對象提供這一實(shí)例
單例模式的實(shí)現(xiàn)方式 圍繞單例模式的特點(diǎn)源碼,一般常見的實(shí)現(xiàn)方式有以下幾種:
懶漢式
餓漢式
Double Check Lock(DCL)雙重檢查鎖定
靜態(tài)內(nèi)部類實(shí)現(xiàn)
枚舉單例
記錄式單例
門面模式
外觀模式
外觀模式(Facade模式)也叫門面模式,通過外觀類的包裝,將復(fù)雜的電銷外呼程序通過封裝提供簡單的接口供客戶端使用,以便降低客戶端的使用復(fù)雜度。外觀模式Facade類提供一個(gè)上層接口,集成封裝了各個(gè)子電銷外呼程序的方法供客戶端使用。客戶端只需要直接與外觀角色交互,客戶端與子電銷外呼程序之間的復(fù)雜關(guān)系由外觀角色來實(shí)現(xiàn),從而降低了電銷外呼程序的耦合度。
策略模式
策略模式(StrategyPattern)也成政策模式,通過定義抽象類或基類的策略,來生成不同實(shí)現(xiàn)的算法家族,以便各個(gè)具體策略類(ConcreteStrategy)能夠進(jìn)行替換,降低耦合。
適配器模式:
基本概念:適配器模式把一個(gè)類的接口變換成客戶端所期待的另一種接口,從而使原本因接口不匹配而無法在一起工作的兩個(gè)類能夠在一起工作。
適配器模式的用途:
用電器做例子,筆記本電腦的插頭一般都是三相的,即除了陽極、陰極外,還有一個(gè)地極。而有些地方的電源插座卻只有兩極,沒有地極。電源插座與筆記本電腦的電源插頭不匹配使得筆記本電腦無法使用。這時(shí)候一個(gè)三相到兩相的轉(zhuǎn)換器(適配器)就能解決此問題,而這正像是本模式所做的事情。
適配器模式的結(jié)構(gòu):適配器模式有類適配器模式和對象適配器模式兩種不同的形式。
建造者模式
基本概念:是一種對象構(gòu)建的設(shè)計(jì)模式,它可以將復(fù)雜對象的建造過程抽象出來(抽象類別),使這個(gè)抽象過程的不同實(shí)現(xiàn)方法可以構(gòu)造出不同表現(xiàn)(屬性)的對象。
Builder模式是一步一步創(chuàng)建一個(gè)復(fù)雜的對象,它允許用戶可以只通過指定復(fù)雜對象的類型和內(nèi)容就可以構(gòu)建它們。用戶不知道內(nèi)部的具體構(gòu)建細(xì)節(jié)。Builder模式是非常類似抽象工廠模式,細(xì)微的區(qū)別大概只有在反復(fù)使用中才能體會到。
觀察者模式
基本概念:觀察者模式定義了一種一對多的依賴關(guān)系,讓多個(gè)觀察者對象同時(shí)監(jiān)聽某一主題對象。這個(gè)主題對象在狀態(tài)發(fā)生變化時(shí),會通知所有觀察者對象,使它們能夠自動更新自己。觀察者模式又叫發(fā)布-訂閱(Publish/Subscribe)模式。
以上,就是我的理解。歡迎各位溝通交流。