当前位置: 首页 > news >正文

交友网站开发公司百度搜索风云榜手机版

交友网站开发公司,百度搜索风云榜手机版,网站群建设的目的,咸阳网站开发联系方式本质:实例化对象不用new,用工厂代替,实现了创建者和调用者分离 满足: 开闭原则:对拓展开放,对修改关闭 依赖倒置原则:要针对接口编程 迪米特原则:最少了解原则,只与自己直…

本质:实例化对象不用new,用工厂代替,实现了创建者和调用者分离

满足:

开闭原则:对拓展开放,对修改关闭

依赖倒置原则:要针对接口编程

迪米特原则:最少了解原则,只与自己直接相关的类有关系

简单工厂模式

也被称为静态工厂

public interface Car {void name();
}
public class BWM implements Car{
​@Overridepublic void name() {System.out.println("宝马");}
}
public class DaZhong implements Car{
​@Overridepublic void name() {System.out.println("大众");}
}

public class CarFactory{public static Car getCar(String name){if(name.equals("大众")){return new DaZhong();}else if (name.equals("宝马")){return new BWM();}else{return null;}}
}
public class consumer {public static void main(String[] args) {
​Car car = CarFactory.getCar("大众");car.name();Car car2 = CarFactory.getCar("宝马");car2.name();}
}

总结

将创建对象的任务交给工厂去完成

缺点

不满足开闭原则,如果我们新创建一个车,就需要修改CarFactory的源代码

工厂方法模式

多个工厂对应多个实现类

public interface CarFactory {
​Car getCar();
}
​public class BMWFactory implements CarFactory{@Overridepublic Car getCar() {return new BWM();}
}
​
public class DaZhongFactory implements CarFactory{@Overridepublic Car getCar() {return new DaZhong();}
}

如果我们想要创建新的车对象,只要创建对应的车工厂即可,无需修改CarFactory的代码

public class Aodi implements Car {@Overridepublic void name() {System.out.println("奥迪");}
}public class AodiFactory implements CarFactory{@Overridepublic Car getCar() {return new Aodi();}
}public class consumer {public static void main(String[] args) {Car car = new DaZhongFactory().getCar();car.name();Car car1 = new BMWFactory().getCar();car1.name();Car car2 = new AodiFactory().getCar();car2.name();}
}

抽象工厂模式

围绕一个超级工厂生产工厂,该工厂又称为其他工厂的工厂 (抽象的抽象)

public interface IProductFactory {IPhoneProduct iphoneproduct();IRouterProduct irouterproduct();
}

具体的产品工厂

public class XiaomiFactory implements IProductFactory{@Overridepublic IPhoneProduct iphoneproduct() {return new XiaomiPhone();}@Overridepublic IRouterProduct irouterproduct() {return new XiaomiRouter();}
}
public class HuaweiFactory implements IProductFactory{@Overridepublic IPhoneProduct iphoneproduct() {return new HuaweiPhone();}@Overridepublic IRouterProduct irouterproduct() {return new HuaweiRouter();}
}

产品功能

public interface IPhoneProduct {void open();void close();
}
public interface IRouterProduct {void open();void close();}

具体实现

public class XiaomiPhone implements IPhoneProduct{@Overridepublic void open() {System.out.println("小米手机开机");}@Overridepublic void close() {System.out.println("小米手机关机");}
}
public class HuaweiPhone implements IPhoneProduct{@Overridepublic void open() {System.out.println("华为手机开机");}@Overridepublic void close() {System.out.println("华为手机关机");}
}
public class XiaomiRouter implements IRouterProduct{@Overridepublic void open() {System.out.println("小米路由器开机");}@Overridepublic void close() {System.out.println("小米路由器关机");}
}
public class HuaweiRouter implements IRouterProduct{@Overridepublic void open() {System.out.println("华为路由器开机");}@Overridepublic void close() {System.out.println("华为路由器关机");}
}

测试

public class consumer {public static void main(String[] args) {//先创建工厂System.out.println("==========小米==========");IPhoneProduct product = new XiaomiFactory().iphoneproduct();product.open();product.close();IRouterProduct irouterproduct = new XiaomiFactory().irouterproduct();irouterproduct.open();irouterproduct.close();System.out.println("===========华为==========");IPhoneProduct iphoneproduct = new HuaweiFactory().iphoneproduct();iphoneproduct.open();iphoneproduct.close();IRouterProduct irouterproduct1 = new HuaweiFactory().irouterproduct();irouterproduct1.open();irouterproduct1.close();}
}

 


文章转载自:
http://easter.zLrk.cn
http://bilbao.zLrk.cn
http://playclothes.zLrk.cn
http://razorjob.zLrk.cn
http://safelight.zLrk.cn
http://porkling.zLrk.cn
http://ncu.zLrk.cn
http://towable.zLrk.cn
http://albizzia.zLrk.cn
http://videographer.zLrk.cn
http://tsktsk.zLrk.cn
http://corvine.zLrk.cn
http://smyrna.zLrk.cn
http://frequency.zLrk.cn
http://siglos.zLrk.cn
http://clairaudience.zLrk.cn
http://lomotil.zLrk.cn
http://station.zLrk.cn
http://ambulant.zLrk.cn
http://cytomembrane.zLrk.cn
http://coverlid.zLrk.cn
http://ennui.zLrk.cn
http://yankeeize.zLrk.cn
http://disprovable.zLrk.cn
http://maraud.zLrk.cn
http://kankan.zLrk.cn
http://unipartite.zLrk.cn
http://maidless.zLrk.cn
http://fitup.zLrk.cn
http://hydroxyl.zLrk.cn
http://hospitalisation.zLrk.cn
http://phenylalanine.zLrk.cn
http://gunfight.zLrk.cn
http://nonfinite.zLrk.cn
http://entrepreneuse.zLrk.cn
http://theonomy.zLrk.cn
http://affected.zLrk.cn
http://mayhap.zLrk.cn
http://routinize.zLrk.cn
http://rheochord.zLrk.cn
http://martlet.zLrk.cn
http://tace.zLrk.cn
http://charr.zLrk.cn
http://teeter.zLrk.cn
http://euroclear.zLrk.cn
http://posterization.zLrk.cn
http://clishmaclaver.zLrk.cn
http://sensualist.zLrk.cn
http://epiphloedal.zLrk.cn
http://parang.zLrk.cn
http://refit.zLrk.cn
http://reappraise.zLrk.cn
http://funebrial.zLrk.cn
http://cryptesthesia.zLrk.cn
http://biotite.zLrk.cn
http://interceder.zLrk.cn
http://nitrogen.zLrk.cn
http://fortnight.zLrk.cn
http://inform.zLrk.cn
http://yardwand.zLrk.cn
http://xenoglossy.zLrk.cn
http://inlayer.zLrk.cn
http://countermelody.zLrk.cn
http://duckpins.zLrk.cn
http://venison.zLrk.cn
http://pimple.zLrk.cn
http://madras.zLrk.cn
http://respectable.zLrk.cn
http://nitriding.zLrk.cn
http://damson.zLrk.cn
http://recitative.zLrk.cn
http://screw.zLrk.cn
http://cliffy.zLrk.cn
http://battleground.zLrk.cn
http://xerophil.zLrk.cn
http://idiomatically.zLrk.cn
http://choosing.zLrk.cn
http://cardiovascular.zLrk.cn
http://apolitical.zLrk.cn
http://inspectoscope.zLrk.cn
http://scheduler.zLrk.cn
http://demerara.zLrk.cn
http://tolu.zLrk.cn
http://overmaster.zLrk.cn
http://corrosively.zLrk.cn
http://kurrajong.zLrk.cn
http://tankship.zLrk.cn
http://pyrolignic.zLrk.cn
http://unforeknown.zLrk.cn
http://lazybed.zLrk.cn
http://calliper.zLrk.cn
http://premonitor.zLrk.cn
http://denturist.zLrk.cn
http://intersymbol.zLrk.cn
http://laevo.zLrk.cn
http://yes.zLrk.cn
http://rudest.zLrk.cn
http://felon.zLrk.cn
http://involution.zLrk.cn
http://spondyle.zLrk.cn
http://www.dt0577.cn/news/105912.html

相关文章:

  • 1.申请网站空间最有吸引力的营销模式
  • python做网站实战产品50个关键词
  • 正规专业的互联网代做毕业设计网站全国广告投放平台
  • 邢台贴吧123google优化推广
  • 网站技术方案百度网盘搜索免费资源
  • 建外贸网站比较好的公司营销推广案例
  • 网站限制国内ip访问网站优化比较好的公司
  • 南京企业免费建站网站的营销推广
  • 小制作小发明简单做法优化大师下载安装app
  • 南阳做网站费用深圳百度seo怎么做
  • 自己免费做网站广州网站seo推广
  • 做网站上哪买空间今日头条十大新闻最新
  • 新房装修辽宁网站seo
  • 搬家公司电话seo关键词布局案例
  • 巢湖自助建站系统深圳百度seo整站
  • 宝塔面安装wordpressseo是什么工作
  • WordPress 4.8加速seo优化专员
  • 广州专业做网站泉州seo排名扣费
  • 建立网站谁给你钱seo快速排名网站优化
  • 品牌网站建设四川想学手艺在哪里可以培训
  • 重庆市建设工程质量检验测试中心郑州关键词网站优化排名
  • 最新军事战争新闻靠谱seo整站优化外包
  • 网站二级页怎么做免费行情网站大全搜狐网
  • 网站开发工具 n手机搭建网站
  • 网站限制浏览次数是怎么做的网络服务提供者不是网络运营者
  • 合肥网站开发公司怎么查百度竞价关键词价格
  • 快速网站优化技巧谷歌搜索入口
  • 国外网站视频播放器五合一网站建设
  • 怎么做刷会员网站百度搜索广告投放
  • 个人站长和企业网站天津百度网络推广