老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)

java怎樣實(shí)現(xiàn)工廠模式-創(chuàng)新互聯(lián)

這篇文章將為大家詳細(xì)講解有關(guān)java怎樣實(shí)現(xiàn)工廠模式,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

在通河等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì) 網(wǎng)站設(shè)計(jì)制作按需求定制開發(fā),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),成都全網(wǎng)營銷推廣,外貿(mào)網(wǎng)站制作,通河網(wǎng)站建設(shè)費(fèi)用合理。

定義:

工廠模式是 Java 中最常用的設(shè)計(jì)模式之一。這種類型的設(shè)計(jì)模式屬于創(chuàng)建型模式,它提供了一種創(chuàng)建對象的最佳方式。

工廠模式主要是為創(chuàng)建對象提供過渡接口,以便將創(chuàng)建對象的具體過程屏蔽隔離起來,達(dá)到提高靈活性的目的。

工廠模式根據(jù)抽象程度的不同分為三種:

簡單工廠模式(也叫靜態(tài)工廠模式)
工廠方法模式(也叫多形性工廠)
抽象工廠模式(也叫工具箱)

簡單工廠模式

       實(shí)質(zhì)是由一個(gè)工廠類根據(jù)傳入的參數(shù),動(dòng)態(tài)決定應(yīng)該創(chuàng)建哪一個(gè)產(chǎn)品類(這些產(chǎn)品類繼承自一個(gè)父類或接口)的實(shí)例。簡單工廠模式的創(chuàng)建目標(biāo),所有創(chuàng)建的對象都是充當(dāng)這個(gè)角色的某個(gè)具體類的實(shí)例。 

工廠方法模式

       工廠方法是粒度很小的設(shè)計(jì)模式,因?yàn)槟J降谋憩F(xiàn)只是一個(gè)抽象的方法。 提前定義用于創(chuàng)建對象的接口,讓子類決定實(shí)例化具體的某一個(gè)類,即在工廠和產(chǎn)品中間增加接口,工廠不再負(fù)責(zé)產(chǎn)品的創(chuàng)建,由接口針對不同條件返回具體的類實(shí)例,由具體類實(shí)例去實(shí)現(xiàn)。 

抽象工廠模式

        當(dāng)有多個(gè)抽象角色時(shí)使用的一種工廠模式。抽象工廠模式可以向客戶端提供一個(gè)接口,使客戶端在不必指定產(chǎn)品的具體的情況下,創(chuàng)建多個(gè)產(chǎn)品對象。它有多個(gè)抽象產(chǎn)品類,每個(gè)抽象產(chǎn)品類可以派生出多個(gè)具體產(chǎn)品類,一個(gè)抽象工廠類,可以派生出多個(gè)具體工廠類,每個(gè)具體工廠類可以創(chuàng)建多個(gè)具體產(chǎn)品類的實(shí)例。 

工廠方法模式應(yīng)該在實(shí)際中用的較多,我們以工廠方法模式舉例
(例子來源百度,幫助理解)

抽象的產(chǎn)品類:定義car  交通工具類

public interface Car { 
 void gotowork();
}

定義實(shí)際的產(chǎn)品類,總共定義兩個(gè),bike 和bus 分別表示不同的交通工具類

public class Bike implements Car {
 @Override
 public void gotowork() {
  System.out.println("騎自行車去上班!");
 }
}
public class Bus implements Car {
 @Override
 public void gotowork() {
  System.out.println("坐公交車去上班!");
 }
}

定義抽象的工廠接口

public interface ICarFactory {
 Car getCar();
}

具體的工廠子類,分別為每個(gè)具體的產(chǎn)品類創(chuàng)建不同的工廠子類

public class BikeFactory implements ICarFactory {
 @Override
 public Car getCar() {
  return new Bike();
 }
}
public class BusFactory implements ICarFactory { 
@Override
 public Car getCar() {  
  return new Bus();
 }
}

簡單的測試類,來驗(yàn)證不同的工廠能夠產(chǎn)生不同的產(chǎn)品對象

public class TestFactory {
 @Test
 public void test() {
  ICarFactory factory = null;
  // bike
  factory = new BikeFactory();
  Car bike = factory.getCar();
  bike.gotowork();

  // bus
  factory = new BusFactory();
  Car bus = factory.getCar();
  bus.gotowork();
 }
}

工廠模式的優(yōu)點(diǎn):

        1、一個(gè)調(diào)用者想創(chuàng)建一個(gè)對象,只要知道其名稱就可以了,降低了耦合度。
        2、擴(kuò)展性高,如果想增加一個(gè)產(chǎn)品,只要擴(kuò)展一個(gè)工廠類就可以。使得代碼結(jié)構(gòu)更加清晰。
        3、屏蔽產(chǎn)品的具體實(shí)現(xiàn),調(diào)用者只關(guān)心產(chǎn)品的接口。 

工廠模式的缺點(diǎn):

        每次增加一個(gè)產(chǎn)品時(shí),都需要增加一個(gè)具體類和對象實(shí)現(xiàn)工廠(這里可以使用反射機(jī)制來避免),使得系統(tǒng)中類的個(gè)數(shù)成倍增加,在一定程度上增加了系統(tǒng)的復(fù)雜度,同時(shí)也增加了系統(tǒng)具體類的依賴。所以對于簡單對象來說,使用工廠模式反而增加了復(fù)雜度。 

工廠模式的適用場景:

        1、  一個(gè)對象擁有很多子類。
        2、創(chuàng)建某個(gè)對象時(shí)需要進(jìn)行許多額外的操作。
        3、系統(tǒng)后期需要經(jīng)常擴(kuò)展,它把對象實(shí)例化的任務(wù)交由實(shí)現(xiàn)類完成,擴(kuò)展性好。 

關(guān)于Java中的工廠模式的一些常見問題:

        利用父類的向下轉(zhuǎn)型(使用父類類型的引用指向子類的對象)是可以達(dá)到類似于工廠模式的效果的,那為什么還要用工廠模式呢?
        把指向子類對象的父類引用賦給子類引用叫做向下轉(zhuǎn)型,如:

Class Student extends Person  
Person s = new Student(); 
s = (Student)person ;

        使用向下轉(zhuǎn)型在客戶端實(shí)例化子類的時(shí)候,嚴(yán)重依賴具體的子類的名字。當(dāng)我們需要更改子類的構(gòu)造方法的時(shí)候,比如增加一個(gè)參數(shù),或者更改了子類的類名,所有的new出來的子類都需要跟著更改。   
        但如果我們使用工廠模式,我們僅僅需要在工廠中修改一下new的代碼,其余項(xiàng)目中用到此實(shí)例的都會(huì)跟著改,而不需要我們手動(dòng)去操作。

關(guān)于“java怎樣實(shí)現(xiàn)工廠模式”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),請把它分享出去讓更多的人看到。


分享標(biāo)題:java怎樣實(shí)現(xiàn)工廠模式-創(chuàng)新互聯(lián)
URL分享:http://www.xueling.net.cn/article/jdpgh.html

其他資訊

在線咨詢
服務(wù)熱線
服務(wù)熱線:028-86922220
TOP
主站蜘蛛池模板: 美女露100‰奶头18禁 | 一级黄色靠逼 | 91大神夯51部在线观看 | A片免费观看一区二区三一区 | 日本黄色网页 | 成年日韩免费大片黄在线观看 | 美女裸体无遮挡永久免费观看网站 | 精品人伦一区二区三区潘金莲 | 久久久一牛精品99久久精品66 | 欧美日韩激情视频在线观看 | 杏导航aⅴ福利网站 | 亚洲成人高清 | 国产精品久一 | 一区二区视频网站 | 国产成人久久久精品二区三区 | 欧美日韩国产综合视频 | 爱999精品视频 | 久久无码人妻国产一区二区 | 欧美国产片 | 日本丰满妇人成熟免费中文字幕 | 一区小视频| 人人人插 | 三年片在线观看免费视频 | 我要看一级黄色毛片 | 欧美A级毛欧美1级A大片 | 国产精品久久久久影视 | 好湿好紧太硬了我太爽了视频 | 国产激情毛片 | av不卡国产 | 成人美女黄网站色大免费的 | 日本牲交大片无遮挡 | 深夜福利小视频 | 日本美国大片免费视频播放器 | 成人午夜爽爽爽免费视频 | 欧美成ee人免费视频 | 亚洲国产精品自拍 | 免费日韩av在线 | www.日| 亚洲AV无码精品色午夜蜜芽 | 俄罗斯老熟妇乱子伦视频 | 亚洲精品自偷自拍无码忘忧 |