成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

java中方法工廠模式的示例分析

這篇文章給大家分享的是有關(guān)java中方法工廠模式的示例分析的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

成都創(chuàng)新互聯(lián)服務(wù)項目包括南昌網(wǎng)站建設(shè)、南昌網(wǎng)站制作、南昌網(wǎng)頁制作以及南昌網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,南昌網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到南昌省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!


? 工廠方法模式要點:

– 為了避免簡單工廠模式的缺點,不完全滿足OCP。

– 工廠方法模式和簡單工廠模式最大的不同在于,簡單工廠模式只有一個(對于一個項目或者一個獨立模塊而言)工廠類,而工廠方法模式有一組實現(xiàn)了相同接口的工廠(用來生產(chǎn)同一等級結(jié)構(gòu)中的固定產(chǎn)品,支持增加任意產(chǎn)品)

2
方法工廠模式
java中方法工廠模式的示例分析

我仍然用一個代碼示例來進(jìn)行講解!

  1. 首先跟簡單工廠一樣寫出Animal接口和Dog,Cat兩個類,這里我就不寫出代碼了,要看代碼的朋友可以看上一篇文章。

   

   2. 我們首先創(chuàng)建AnimalFactory接口:

public interface AnimalFactory  {
   Animal createAniaml();
}

 

   3. 繼續(xù)創(chuàng)建DogFactory,CatFactory類,并繼承AnimalFactory接口

public class CatFactory implements AnimalFactory{
   @Override
   public Animal createAniaml() {
       return new Cat();
   }
}
 

public class DogFactory implements AnimalFactory{
   @Override
   public Animal createAniaml() {
       return new Dog();
   }
}
 

 

4.最后我們來測試一下我們的代碼:

public class Test {
   public static void main(String[] args){
       Animal a1 = new DogFactory().createAniaml();
       Animal a2 = new CatFactory().createAniaml();
       a1.speak();
       a2.speak();
   }
}
 

運行結(jié)果:

汪汪汪!
喵喵喵!

Process finished with exit code 0
 

分析:相比較于簡單工廠模式,方法工廠模式雖然解決了OCP的問題,但是它有一個很不好的地方-就是結(jié)構(gòu)太復(fù)雜,因為我們多創(chuàng)建了兩個工廠類,如果我們今后要加一些工廠時,我們需要創(chuàng)建很多的類,所以如今這種模式使用的比較少,大多數(shù)仍然為簡單工廠模式。

感謝各位的閱讀!關(guān)于“java中方法工廠模式的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

本文標(biāo)題:java中方法工廠模式的示例分析
新聞來源:http://jinyejixie.com/article42/jopoec.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護(hù)做網(wǎng)站、品牌網(wǎng)站設(shè)計、企業(yè)建站、品牌網(wǎng)站制作、靜態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管
邓州市| 长春市| 图们市| 江阴市| 沙湾县| 靖州| 甘谷县| 台中市| 寻甸| 敦煌市| 渑池县| 江阴市| 临泽县| 平顶山市| 从江县| 项城市| 图木舒克市| 滦平县| 湛江市| 邢台市| 凯里市| 马公市| 安达市| 茂名市| 黔西县| 托里县| 伊宁市| 通州区| 通州市| 尉氏县| 凤山县| 都江堰市| 容城县| 青河县| 香格里拉县| 河津市| 浮山县| 米易县| 武夷山市| 永新县| 陇西县|