• <menu id="gyiem"><menu id="gyiem"></menu></menu>
  • <menu id="gyiem"><code id="gyiem"></code></menu>

    Java設計模式(二) 工廠方法模式

    原創文章,轉載請務必將下面這段話置于文章開頭處(保留超鏈接)。
    本文轉發自技術世界原文鏈接 http://www.luozeyang.com/design_pattern/factory_method/

    工廠方法模式解決的問題

    上文《簡單工廠模式不簡單》中提到,簡單工廠模式有如下缺點,而工廠方法模式可以解決這些問題

    • 由于工廠類集中了所有實例的創建邏輯,這就直接導致一旦這個工廠出了問題,所有的客戶端都會受到牽連。
    • 由于簡單工廠模式的產品是基于一個共同的抽象類或者接口,這樣一來,產品的種類增加的時候,即有不同的產品接口或者抽象類的時候,工廠類就需要判斷何時創建何種接口的產品,這就和創建何種種類的產品相互混淆在了一起,違背了單一職責原則,導致系統喪失靈活性和可維護性。
    • 簡單工廠模式違背了“開放-關閉原則”,因為當我們新增加一個產品的時候必須修改工廠類,相應的工廠類就需要重新編譯一遍。
    • 簡單工廠模式由于使用了靜態工廠方法,造成工廠角色無法形成基于繼承的等級結構。

    工廠方法模式

    工廠方法模式介紹

    工廠方法模式(Factory Method Pattern)又稱為工廠模式,也叫多態工廠模式或者虛擬構造器模式。在工廠方法模式中,工廠父類定義創建產品對象的公共接口,具體的工廠子類負責創建具體的產品對象。每一個工廠子類負責創建一種具體產品。

    工廠方法模式類圖

    工廠模式類圖如下 (點擊可查看大圖)
    Factory Method Pattern Class Diagram

    工廠方法模式角色劃分

    • 抽象產品(或者產品接口),如上圖中IUserDao
    • 具體產品,如上圖中的MySQLUserDao,PostgreSQLUserDao和OracleUserDao
    • 抽象工廠(或者工廠接口),如IFactory
    • 具體工廠,如MySQLFactory,PostgreSQLFactory和OracleFactory

    工廠方法模式使用方式

    如簡單工廠模式直接使用靜態工廠方法創建產品對象不同,在工廠方法,客戶端通過實例化具體的工廠類,并調用其創建實例接口創建具體產品類的實例。根據依賴倒置原則,具體工廠類的實例由工廠接口引用(客戶端依賴于抽象工廠而非具體工廠),具體產品的實例由產品接口引用(客戶端和工廠依賴于抽象產品而非具體產品)。具體調用代碼如下

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    package com.jasongj.client;

    import com.jasongj.dao.IUserDao;
    import com.jasongj.factory.IDaoFactory;
    import com.jasongj.factory.MySQLDaoFactory;

    public class Client {

    public static void main(String[] args) {
    IDaoFactory factory = new MySQLDaoFactory();
    IUserDao userDao = factory.createUserDao();
    userDao.getUser("admin");

    }

    }

    工廠方法模式示例代碼

    本文所述工廠方法模式示例代碼可從作者Github下載

    工廠方法模式優點

    • 因為每個具體工廠類只負責創建產品,沒有簡單工廠中的邏輯判斷,因此符合單一職責原則。
    • 與簡單工廠模式不同,工廠方法并不使用靜態工廠方法,可以形成基于繼承的等級結構。
    • 新增一種產品時,只需要增加相應的具體產品類和相應的工廠子類即可,相比于簡單工廠模式需要修改判斷邏輯而言,工廠方法模式更符合開-閉原則。

    工廠方法模式缺點

    • 添加新產品時,除了增加新產品類外,還要提供與之對應的具體工廠類,系統類的個數將成對增加,在一定程度上增加了系統的復雜度,有更多的類需要編譯和運行,會給系統帶來一些額外的開銷。
    • 雖然保證了工廠方法內的對修改關閉,但對于使用工廠方法的類,如果要換用另外一種產品,仍然需要修改實例化的具體工廠。
    • 一個具體工廠只能創建一種具體產品

    簡單工廠模式與OOP原則

    已遵循的原則

    • 依賴倒置原則
    • 迪米特法則
    • 里氏替換原則
    • 接口隔離原則
    • 單一職責原則(每個工廠只負責創建自己的具體產品,沒有簡單工廠中的邏輯判斷)
    • 開閉原則(增加新的產品,不像簡單工廠那樣需要修改已有的工廠,而只需增加相應的具體工廠類)

    未遵循的原則

    • 開閉原則(雖然工廠對修改關閉了,但更換產品時,客戶代碼還是需要修改)

    Java設計模式系列

    郭俊 Jason wechat
    歡迎關注作者微信公眾號【大數據架構】
    您的贊賞將支持作者繼續原創分享
    速赢彩app www.36788s.com | www.561pj.com | www.55060t.com | www.80844.com | www.507281.com | 88851q.com | 98955k.com | www.10899b.com | www.xinpujingcaipiao.com | www.15.net | www.330291.com | 5478t.com | 00774vv.com | www.bwin3388.com | www.hg8ww.com | www.68682k.com | www.193722.com | 4340k.com | 822930.com | www.vv2649.com | www.4196s.com | www.9928aa.com | 08159b.com | aa4119.com | www.18735528058.com | www.hgw3300.com | www.js36686.com | www.796933.com | 06381010.com | 923270.com | www.8148.com | www.js02347.com | www.594277.com | 0363.com | 7945zz.com | www.44889u.com | www.vnsr638.com | www.959709.com | 69111.com | i35151.com | www.992254.com | www.x88789.com | www.507381.com | 76543e.com | www.033033v.com | www.77731s.com | www.99638g.com | rbbet66.com | blmdc7.com | www.477745.com | www.4136b.com | www.9478w.com | 21866q.com | pjxianggang.com | www.js1177.com | www.0099psb.com | www.470680.com | 11005g.com | www.77537t.com | www.o32031.com | www.676944.com | 2418f.com | www.un1515.com | www.9737yy.com | www.513.vip | 73055i.com | 2846e.com | www.296977.com | www.11cmc.com | 28288jj.com | 80892nn.com | www.808888.tw | www.022u.cc | 175080.com | 500000370.com | www.jcbo13.com | www.9478d.com | 01885.com | t365c.com | www.28000r.com | www.fcff3.com | h21148.com | www.326365.com | www.xj6003.com | www.231002.com | a98c.com | www.3066037.com | www.33588b.com | 1408c.com | www.yun900.com | www.55060n.com | www.652861.com | 4025r.com | www.17011.com | www.aobo190.com | 36401111.com | www.3066hg.com | www.91779x.com | www.321953.com | 33318u.com | www.4466303.com | www.78wcp.com | 38.sb | www.980143.com | www.256818.com | 56988n.com | www.pj550099.com | www.55676u.com | 11gg8332.com | 20177770.com | www.388158.com | 44077x.com | 2418003.com | www.3116p.com | www.043552.com | 00224002.com | www.8080999b.com | 168cp-c.com | 5622t.com | www.xpj16685.com | ttdl4008123.com | 500000373.com | www.89677r.com | www.215135.com | 3661yh.com | www.4694c.com | www.444801.com | 4647l.com | www.4212q.com | www.309825.com | 6269pp.com | www.bet63o.com | www.76520v.com | 6245o.com | www.33678hh.com | 7773657.com | www.56733q.com | www.676711.com | 56787hb.com | www.76060c.com | www.hg8889.com | 3334661.com | www.9702xx.com | www.29277k.com | csj750.com | www.322888.com | www.949403.com | 3534a.com | www.4963pp.com | www.063552.com | 74668.com | www.a63568.com | amjsw.net | www.282003.com | www.89969.cc | 22296zt.com | www.8850w6.com | 99bjlxz.com | www.56733s.com | www.8582qq.com | 8547qq.com | www.66442.com | www.837887.com | 9649i.com | www.c33668.com | 829330.com | www.3459k.com | www.23579b.com | z15666.com | www.85857z.com | www.77210e.com | www.1112xj.com | www.7239f.com | 7893w2.com | www.2tyc.com | 11018h.com | www.9785888.com | www.7793v.com | 8569811v.com | www.hv99365.com | 88850ii.com | www.166tk.com | www.568565.com | 50020022.com | www.50080m.com | so777.cc | www.689797.com | 1043.com | www.yfcp315.com | 92266m.com | www.boma0199.com | www.579020.com | qingshaonian.cn | www.4323l.com | xpj66112.com | www.60886c.com | 1294u.com | www.hg2182.com | www.053059.com | www.1019993.com | www.0014a.com | xl224.com | www.37377v.com | 6572n.com | www.jz5777.com | 8577s.cc | www.888zhenren20.com | 2934u.com | www.hg7111.com | www.642977.com | www.3435z.com | www.38396.com | yabo692.com | www.37266.co | 40400.com | www.52062j.com | 44335156.com | www.7366007.com | 1463n.com | www.tt8088.com | 7742j.com | www.hg7624.com | bwin990.co | www.3046w.com | www.403770.com | www.yh03456.com | www.890703.com | www.033033w.com | www.8000hc.com | 365225d.com | www.98255.com | 1077ll.com | www.33112r.com | 500000919.com | www.91junzi.com | 2490f.com | www.7158.cc | 86811qq.com | www.6678695.com | 22115003.com | www.9570111.com | p86811.com | www.6600ra8.com | mi533.com | www.xpj16685.com | 9479a2.com | www.74737.com | 208899.com | www.333999qipai.com | 1104001.com | www.89777l.com | 00048s.com | www.77803b.com | hg00200.com | www.6666y.cc | www.b3654.com | www.621421.com | www.dy4411.com | www.352477.com | www.q13608.com | 18775b.com | www.28249.com | 3807n.com | www.hg98091.com | 7742zz.com | www.806sun.com | qq3405.com | www.68203dd.com | 234904.com | www.80075.com | 8294s.com | www.808466.com | www.39695v.com | www.112779.com | www.hg8915.com | ff555i.com | www.88166z.com | z1458.com | www.amjs119.com | sj7377.com | www.5522q.cc | www.333222h.com | www.347177.com | www.hg8447.com | 1125.com | www.3032mm.com | c14666.com | www.71595.com | www.b3656.com | www.372477.com | www.ym7171.com | 55984d.com | www.7366l.com | 3522x.cc | www.5484g.com | www.654bet.com | 5656394.com | www.c51ii.vip | 4637799.com | www.cq58qp.com | pjpj.cc | www.693930.com | www.244749.com | 1408c.com | www.30350m.com | wnsr8827.com | www.998786.com | www.hg3385.com | 30006r.com | www.666207.com | 3522f.vip | www.000ac.com | www.msc44.la | dz0999.com | www.1183066.com | nn500c.com | www.858899.com | www.77605b.com | 535pj.cc | www.954321y.com | hga008.al | www.29277a.com | www.983888d.com | 1104006.com | www.5522n.cc | www.hg0799.com | hg10n.com | www.780sun.com | 37570l.com | www.215077.com | www.tc8805.com | 39199d.com | www.1035j.com | www.11227136.com | 9464005.com | www.ejylc10.com | www.68666r.com | 29918dd.com | www.dsn88.net | 8569811c.com | www.243500.com | www.36008.com | wnsr8829.com | www.560721.com | www.yingle55.com | 25288v.com | www.775702.com | www.suncity12.com | 71707l.com | www.8424.com | www.767a.cc | 40033j.com | www.zou168.com | www.pj5719.com | 09200444.com | www.60ksw.com | www.67297.com | vic6308.com | www.0014z.com | www.10870.com | 97340011.com | www.989447.com | www.610567.com | 67890o.com | www.825126.com | www.55526e.com | 444b9.com | www.317787.com | www.8473p.com | 6830b.com | am2017111.com | www.69567y.com | www.555xin2.com | 3822c.com | www.yh08118.com | www.sb9907.com | 7736r.com | www.33068.cc | www.yh391.com | 65560123.com | www.234265.com | www.g80288.com | 55984h.com | 78808z.com | www.0194008.com | www.330099u.com | 0805f.com | www.hy5355.com | www.20199oo.com | k45638.com | 5804r.com | www.0343i.com | www.o8867.com | 0208.com | www.613595.com | www.10999z.com | 69990v.com | zhcp20.com | www.582010.com | www.22447712.com | 5856ww.com | www.186757.com | www.xpj11882.com | www.00829a.com | 4828.com | www.483552.com | www.62979b.com | www.yh111222.com | 495.gg | www.578393.com | www.b12189.com | www.vns990.cc | 55331v.com | www.701250.com | www.4196s.com | www.vnsr500.com | 11oo8332.com | www.629021.com | www.63355.com | www.67797f.com | 380111666.com | www.373500.com | www.8877kcd.com | www.ljw034.com | 4488yyy.com | woaidrf.com | www.15365b.com | www.4329.com | 88842949.com | 3202y.com | www.621416.com | www.ba303.com | www.93036522.com | 55331382.com | dzc333.com | www.3890r.com | www.7415aa.com | www.546993.com | 30171177.com | www.50026u.com | www.yh68222.com | www.226600r.com | lch8898.com | 3846j.com | www.444073.com | www.55717q.com | www.881389.com | 256777.com | 8742p.com | www.551409.com | www.55676n.com | www.am187.com | 9149m.com | 35590088.com | www.091069.com | www.550021j.com | www.373351.com | www.7720m.com | 4165x.com | 656456.com | www.585hc.com | www.4408598.com | www.js44444.com | 2247y.com | 1389s.com | www.393890.com | www.bj499.com | www.544416.com | www.bwin299.com | df8f.com | 3678iii.com | www.456685.com | www.0601d.com | www.808888k.com | www.3459n.com | w5050w.com | js99449.com | www.319075.com | www.77801f.com | www.57800g.com | www.yh0999.com | 8577i.cc | 3467k.cc | 30006y.com | www.603854.com | www.3978f.com | www.00773q.com | www.g1137.com | v99932.com | 365vip600.cc | 22117y.com | www.603154.com | www.88266k.com | www.1851116.com | www.3170005.com | 39520.net | 55967x.com | 0239.cc | www.84499a.com | www.004hy.cc | www.siji07.com | www.938d.cc | www.y2205.com | 909263.com | 5219o.com | 8381ss.com | www.100202.com | www.gy1.com | www.4331b.com | www.bwinyz41.com | www.okok116.com | www.1366i.com | 9895n.com | 4022aa.com | 9339999s.com | 59889e.com | www.671466.com | www.66376w.com | www.468860.com | www.697002.com | www.987msc.com | www.779955.com | 95244.com | 66671k.com | 55229193.com | 3189s.com | www.jj0.net | www.tctx8.com | www.yt2019.com | www.62979w.com | www.108007.com | www.706sunbet.com | www.5197365.com | 44hh8331.com | 20160913.com | mg4151.vip | qpby456.com | 683bet.com | www.178157.com | www.841879.com | www.7782w.com | www.ag.hg3005.tw | www.4102r.com | www.net567.com | www.a7793.com | www.688222.com | www.h7788k.com | 3424v.com | 0747kk.com | 81207as3.com | 22098m.com | 23800t.com | 61320099.com | 3121ww.com | bet577b.com | www.082965.com | www.562509.com | www.986656.com | www.3552u.com | www.80075j.com | www.6939o.com | www.1388pp.com | www.4196e.com | www.5446qq.com | www.007ggb01.com | www.1111zx.com | www.2646x.com | www.pj9075.com | www.440567.com | www.917xpj3.com | 84844001.com | 272a.net | 2373l.com | 2805o.com | 2247kk.com | 644675.com | ry064.com | 08159c.com | 40014477.com | vv1915.com | xinvip7.com | 54249955.com | 66671t.com | 66671c.com | 37111e.com | 0698e.com | 2805i.com | 36989d.com | 38989j.com | bet12306420.com | 87965ww.com | xhby988.com | 5443w.com | 78117766.com | 553322XX.com | bwinqqq.com | vns8351.com | q4389.com | 3566qq.com | 3778uu.com | hga017.com | 983888q.com | 50067c.com | g72227.com | 8577n.cc | 500000874.com | 666-5.com | www.pu1177.com | www.vns8893.com | www.77788806.com | www.8655msc.com | www.pj8790.com | www.15960000.com | www.29962.com | www.110476.com | www.js5599.vip | www.360cp.com | www.10999z.com | www.b12189.com | www.535083.com | www.js36686.com | www.126cpw.com | www.60108y.com | www.6364l.com | www.bxcp4.com | www.686536.com | www.399046.com | www.80065u.com | hkmh.biz | 2061.com | 566777p.com | 3678dd.com | sbc288.com | 69441166.com | lswjs4399.com | www.38200k.com | www.2846o.com | www.82508b.com | www.10482.com | www.kmk.com | www.91779b.com | www.86333c.com | www.76520n.com | www.zfcp2.com | www.544089.com | b2490.com | 61789u.com | 3009300930093009.com | 4231d.com | 58533333.com | www.f67783.com | www.4938q.com | www.66667666.com | www.61130.com | www.60886.com | www.531089.com | www.2875t.com | www.627029.com | 99567t.com | 2805j.com | 68bet.com | hjdc789.com | 56987dd.com | www.m22365.com | www.771671a.com | www.7415c.com | www.578888.vip | www.32123n.com | www.656270.com | 00gg8331.com | 37amjs.com | 4541b.com | r47479.com | www.21365qq.com | www.138555.com | www.28000a.com | www.7920p.com | www.83560.com | www.580667.com | 168cp-s.com | 5589o.com | l8381.com | www.long6668.com | www.df5550.com | www.l32939.com | www.81608p.com | www.065wy.com | www.110879.com | 8faaa.com | 44264444.com | 1705z.com | www.33623a.com | www.sscb88.cc | www.x99678.com | www.tlcp4.com | sjgc6.com | b05677.com | 32126z.net | www.hg767676.com | www.6574d.com | www.4400ra8.com | www.110272.COM | www.711895.com | 515165.com | 00773aa.com | 621155.com | www.44220151.com | www.00618c.com | www.16065b.com | www.760250.com | 655yh.com | 3846y.com | 22207t.com | www.021213.com | www.m063801.com | www.63500.cc | www.053059.com | xiaowei398.com | 61327722.com | www.330099x.com | www.71071f.com | www.wd088.com | www.378016.com | 0234k.com | weid.tv | www.7830p.com | www.qm999.com | www.yh76o.com | www.357607.com | yl.net | u2554.com | www.pj5715.com | www.3116h.com | www.11025.cc | mobile.baidu.com | 69443366.com | 5060988.com | www.000amdc.com | www.p94600.com | www.917052.com | feicai0633.com | ssha0004.com | www.my1069.net | www.04567e.com | www.26878p.com | 1434k.com | 3386.com | www.129494.com | www.155417.com | www.95999w.com | www.61655i.com | 15876.vip | www.yh8880.cc | www.20199ff.com | www.96386p.com | 38989s.com | 2359922.com | www.bet3651014.com | www.3157l.com | www.9149p.com | 131oo.net | jing555.com | www.vylc6.com | www.115527w.com | www.979816.com | ppp8827.com | 3121uu.com | www.yh684.com | www.0601o.com | www.61233o.com | vip4357.com | www.76543t.com | www.680556.com | www.959591.com | 14142400.com | 195908.com | www.5504s.com | www.26878q.com | yk801.com | 2490l.com | www.js815.com | www.2228229.com | www.076591.com | 4136g.com | www.hg5801.com | www.80868.com | www.505354.com | 2147xl.com | www.h7788r.com | www.733483.com | www.536350.com | 11472222.com | www.43434688.com | www.860840.com | www.546599.com | 3822d.com | www.88807d.com | www.69567g.com | www.355241.com | 3416t.com | www.pj5715.com | www.550022ee.com | www.29277u.com | yh88133.vip | www.msc22.com | www.99677w.com | 2190s.com | 64111m.com | www.rycp051.com | www.sygj7.com | 4288qq.com | www.66666vns.com | www.ag3377.com | www.340911.com | x388388.com | www.33166.com | www.7239f.com | 3122y.com | 66876w.com | www.8473c.com | www.672866.com | 3404g.cc | www.3569b.com | www.55268.vip | 234blg.com | 56987ss.com | www.0072737.com | www.554313.com | u4255.com | www.ao2016.com | www.50064n.com | 1116076.com | www.341188.com | www.610096.com | www.068619.com | 62284.com | www.67df.com | www.827737.com | 4488aa.com | www.5suncity.com | www.26878l.com | 12742u.com | www.e22365.com | www.68993255.com | 9539v.com | 454664.com | www.73990u.com | 25511.com | feicai0414.com | www.0169b.com | www.338073.com | a87570.com | www.lm55.com | www.602587.com | 4nsic.com | www.zte222.com | www.807683.com | lc99y.com | www.pj6667.com | www.cmc.cc | 4340x.com | www.sb8841.com | www.hy5509.com | jj4255.com | www.3306132.com | www.973320.com | 4955q.com | www.4866a90.com | www.839658.com | 444v44.com | www.5049n.com | www.601497.com | 455yh.com | www.9980.la | www.207882.com | oo56988.com | www.xpj448888.com | www.34788o.com | bet28x.com | www.80868.com | 4379r.com | www.28758y.com | www.87480.com | 40666111.com | www.09569i.com | www.50732h.com | 55577381.com | www.138555.com | www.807839.com | 45637p.com | www.vns6601.com | xin98556.com | x2328.com | www.4245.com | 566670011.com | www.sky5678.com | www.34788l.com | 0615009.com | www.hg8907.com | www.529979.com | 0080h.com | www.xpj53516.com | 11018c.com | www.20161166.com | www.555hy.cc | 4288jj.com | www.4694l.com | 28758h.com | www.pjhebei.com | www.77803y.com | 11005g.com | www.dfh280.com | www.77802u.com | www.147891635.com | www.301711.com | 3678bbb.com | www.56655i.com | www.001562.com | www.1116xj.com | www.35918hh.com | 11005g.com | www.rycp162.com | 5309r.com | www.pjbet222.com | www.99340.cc | 4445.com | www.0031331.com | hh697.cn | www.66930000.com | www.c1379.com | 02888722.com | www.86339x.com | yd776.com | www.hv1818.com | www.202340.com | www.88188b.cc | www.50026s.com | 550111b.com | www.7225z.com | 3267.com | www.153msc.com | www.530833.com | 55984u.com | www.65707d.com | so111.cc | www.678js222.com | 7599vv.com | www.2kkj.com | www.186357.com | www.857558.com | www.6364i.com | 88772007.com | www.h36599.com | 59599f.com | www.163a6.com | 33567d.com | www.6555a.com | www.476669.com | www.61789j.com | www.5086l.com | 33nn8331.com | www.hg20.com | 3066ppp.com | www.04567c.com | 4025v.com | www.552567.com | 11yy8331.com | www.13658017870.com | www.616888.com | www.306004.com | www.2109w.com | 4395599.com | www.4923d.com | 53262kk.com | www.js89e.vip | 4002aa.com | www.5446tt.com | 55331bb.com | www.zte444.com | 5144s.com | www.1009js.com | 30019a.com | www.pj2598.com | www.308680.com | www.67797d.com | www.663738.com | www.22567.com | www.998924.com | 55betbet365.com | www.1368c.cc | 518cp6.com | www.50051vip.com | aa56988.com | www.61233w.com | 32126s.net | www.999sun.com | 999582.com | www.9646i.com | qifa168.net | www.55111133.com | 20160044.com | www.13434e.com | 66185a.net | www.868223.com | 73055u.com | www.7406.Co | facai86.com | www.73166k.com | 2506j.com | www.50054c.com | 6868.cc | www.9928f.com | 2767b.com | www.39cp.cc | www.glc11.com | www.906511.com | www.333222x.com | www.607265.com | www.87680o.com | www.263520.com | www.33885940.com | 97297r.com | www.09809.com | 88552007.com | www.3846r.com | y337.com | www.55070i.com | app22299.com | www.js9996.com | 36407766.com | www.28891j.com | d8381.com | www.36787c.com | pppp0066.com | www.cb6888.com | www.617702.com | www.339281.com | www.155439.com | 7196h.com | www.j9478.com | 123456uu.cc | www.393002.com | 9068ll.com | www.950185.com | 4442546.com | www.062wy.com | www.pjfujian.com | www.452166.com | www.yf2112.com | hutu87.com | www.55545h.com | 30175544.com | www.48330i.com | 2757k.com | www.00czj.com | www.365109g.com | www.028082.com | www.44679.com | 4323m.com | www.99552ii.com | 98955k.com | www.00840b.com | www.a2a444.cc | www.377506.com | www.hg55.com | 8520.com | www.n1432.com | 30019jj.com | www.33588s.com | www.hg5857.com | www.150935.com | www.pj6668.com | 365611.com | www.3846f.com | dzhcp4.com | www.ldfc8.com | www.u22365.com | gg5443.com | www.jz298.com | 88993s.com |