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

海南省住房城乡建设厅网站浏览器的网址是多少

海南省住房城乡建设厅网站,浏览器的网址是多少,wordpress 邀请注册,汕头网站建设托管一.工厂模式 实现了创建者和调用者的分离。 二.分类 简单工厂模式 用来生产同一等级结构中的任意产品。(对于新增产品,需要修改已有代码。用的最多) 要点: 简单工厂模式也叫静态工厂模式,就是工厂类一般是使用静态方法,通过接收…

一.工厂模式

  • 实现了创建者和调用者的分离。

二.分类

  • 简单工厂模式

    • 用来生产同一等级结构中的任意产品。(对于新增产品,需要修改已有代码。用的最多)
    • 要点: 简单工厂模式也叫静态工厂模式,就是工厂类一般是使用静态方法,通过接收的参数的不同来返回不同的对象实例。
  • 工厂方法模式

  • 抽象工厂模式

    • 用来生产不同产品族的全部产品。(对于增加新的产品,无能为力;支持增加产品族)

三.要点:

  • 理论上工厂方法模式更优,但实际上,我们一般都使用简单工厂模式。 \color{red}{理论上工厂方法模式更优,但实际上,我们一般都使用简单工厂模式。} 理论上工厂方法模式更优,但实际上,我们一般都使用简单工厂模式。

四.核心本质

  • 实例化对象,用工厂方法代替new操作;
  • 将选择实现类、创建对象统一管理和控制。从而将调用者跟我们的实现类解耦。

五.具体实现

  • 1.简单工厂模式

    • 代码实现

      • 类和接口

/*** 车运行的接口*/
public interface Car {void run();
}
/*** 奥迪车运行实现类 */
public class Audi implements Car {@Overridepublic void run() {System.out.println("奥迪在跑。。。");}
}
/*** 比亚迪车运行实现类 */
public class Byd implements Car {@Overridepublic void run() {System.out.println("比亚迪在跑。。。");}
}
      • 简单工厂类1(也称静态工厂)

/*** 简单工厂类1(也称静态工厂)* @author Administrator**/
public class CarFactory {public static Car createCar(String type){if("奥迪".equals(type)){return new Audi();}else if("比亚迪".equals(type)){return new Byd();}else{return null;}}
}
/***  简单工厂类调用* @author admin*/
public static void main(String[] args) {Car c1= CarFactory.createCar("奥迪");Car c2= CarFactory.createCar("比亚迪");c1.run();c2.run();
}
      • 简单工厂类2(也称静态工厂)

/*** 简单工厂类2(也称静态工厂)* @author Administrator**/
public class CarFactory {public static Car createAudi(){return new Audi();	}public static Car createByd(){return new Byd();	}
}
/***  简单工厂类实现* @author admin*/
public static void main(String[] args) {Car c1= CarFactory.createAudi();Car c2= CarFactory.createByd();c1.run();c2.run();
}






  • 2.工厂方法模式

    • 代码实现

      • 类和接口

/*** 车运行的接口*/
public interface Car {void run();
}
/*** 奥迪车运行实现类 */
public class Audi implements Car {@Overridepublic void run() {System.out.println("奥迪在跑。。。");}
}
/*** 比亚迪车运行实现类 */
public class Byd implements Car {@Overridepublic void run() {System.out.println("比亚迪在跑。。。");}
}
      • 工厂方法模式接口

/*** 工厂方法模式接口*/
public interface CarFactory {Car CreateCar();
}
/*** 工厂方法模式接口实现类*/
public class BydFactory implements CarFactory {@Overridepublic Car CreateCar() {return new Byd();}
}
/*** 工厂方法模式接口方法的重写*/
public class AudiFactory implements CarFactory {@Overridepublic Car CreateCar() {return new Audi();}
}
      • 工厂方法模式调用

/*** 方法工厂模式实现类*/
public static void main(String[] args) {//new AudiFactory().CreateCar().run();Car c=new AudiFactory().CreateCar();c.run();		
}






  • 3.抽象工厂模式

    • 代码实现

      • 类和接口

/*** 座椅接口*/
public interface Seat {void massage();
}
/*** 高端座椅*/
class LuxurySeat implements Seat{@Overridepublic void massage() {System.out.println("高端座椅可以按摩。。。。。");}
}
/*** 低端座椅*/
class LowySeat implements Seat{@Overridepublic void massage() {System.out.println("低端座椅不能按摩。。。。。");}
}
/*** 轮胎接口*/
public interface Tyre {void revolve();
}
/*** 高端轮胎*/
class LuxuryTyre implements Tyre{@Overridepublic void revolve() {System.out.println("不会磨损。。。。");}
}
/*** 低端轮胎*/
class LowTyre implements Tyre{@Overridepublic void revolve() {System.out.println("磨损快。。。。。");}
}
/*** 引擎接口*/
public interface Engine {void run();void start();
}
/*** 高端引擎*/
class LuxuryEngine implements Engine{@Overridepublic void run() {System.out.println("速度快。。。。。。");}@Overridepublic void start() {System.out.println("启动快,。。。。。。");}
}
/*** 低端引擎*/
class LowyEngine implements Engine{@Overridepublic void run() {System.out.println("速度慢。。。。。。");}@Overridepublic void start() {System.out.println("启动慢,。。。。。。");}
}
      • 抽象工厂接口和实现类

/*** 汽车工厂*/
public interface CarFactory {Engine createEngine();  //创建引擎Seat createSeat();		//座椅Tyre createTyre();		//轮胎
}
/*** 低端汽车*/
public class LowCarFactory implements CarFactory {@Overridepublic Engine createEngine() {return new LowyEngine();}@Overridepublic Seat createSeat() {return new LowySeat();}@Overridepublic Tyre createTyre() {return new LowTyre();}
}
/*** 高端汽车*/
public class LuxuryCarFactory implements CarFactory{@Overridepublic Engine createEngine() {return new LuxuryEngine();}@Overridepublic Seat createSeat() {return new  LuxurySeat();}@Overridepublic Tyre createTyre() {return new LuxuryTyre() ;}
}
      • 抽象工厂调用

/*** 抽象工厂模式测试类*/
public static void main(String[] args) {CarFactory c =new LowCarFactory();		Engine e=c.createEngine();e.run();e.start();CarFactory c1 =new LuxuryCarFactory();Engine e1=c.createEngine();e1.run();e1.start();
}



更多设计模式学习:

          设计模式(1):介绍
          设计模式(2):单例模式
          设计模式(4):建造者模式
          设计模式(5):原型模式
          设计模式(6):桥接模式
          设计模式(7):装饰器模式
          设计模式持续更新中…

http://www.dtcms.com/a/571126.html

相关文章:

  • 网站信息系统建设江都建设局网站李局
  • 怎么打开域名网站游戏推广吧
  • linux文件系统和软硬连接
  • 网络 网站建设万能进销存软件免费版
  • 网站优化的主要内容服装搭配网站建设策划书
  • 深圳网站建设公司大全搜狗关键词排名查询
  • 江西网站建设成品软件十大免费
  • 电子学会青少年软件编程(C/C++)3级等级考试真题试卷(2025年9月)
  • 电子商务网站有哪些?个人app开发平台免费
  • 培训网站免费安装wordpress步骤
  • 备案 网站名称企业代码查询入口
  • go-mapus整合到engineercms里,插入带地理信息的照片
  • 建设部安全员证书查询网站asp 精品网站制作
  • 律师网站素材海珠一站式网站建设
  • ESD防护设计宝典(二十三):ESD与EOS失效差异分析
  • 龙川做网站的手机欧美视频网站模板下载 迅雷下载 迅雷下载地址
  • Html5做旅游网站的设计思路wordpress is single
  • Java资源持续监控
  • 微网站教程单位网站开发
  • 导航网站没有内页没有了珠海本地网站设计公司
  • 从原型到生产级跃迁:LangChain 1.0 全面解析,解锁智能体开发新范式
  • 二手车网站模版售价wordpress 文章分页 链接
  • 哪些网站可以做移动端模板北京个人网站制作
  • 网站被k的原因市场营销互联网营销
  • 推荐做素菜的网站文件目录模板wordpress
  • 网站站长在哪登陆后台合肥电脑培训
  • 当当网网站建设建议太原网站网络推广
  • 正则表达式 - 正向断言和反向断言
  • 网站平台怎么推广网站团购活动页面怎么做
  • 法治中国建设网站从零学习做网站