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

做那个的网站谁有html静态网页制作

做那个的网站谁有,html静态网页制作,搜索引擎网址,企业做定制网站的好处目录 模式定义实现方式简单工厂工厂方法主要优点 应用场景源码中的应用 模式定义 定义一个用于创建对象的接口,让子类决定实例化哪一个类。 Factory Method 使得一个类的实例化延迟到子类。 实现方式 简单工厂 以下示例非设计模式,仅为编码的一种规…

目录

  • 模式定义
  • 实现方式
    • 简单工厂
    • 工厂方法
    • 主要优点
  • 应用场景
  • 源码中的应用

模式定义

定义一个用于创建对象的接口,让子类决定实例化哪一个类。
Factory Method 使得一个类的实例化延迟到子类。
在这里插入图片描述

实现方式

简单工厂

以下示例非设计模式,仅为编码的一种规范

public class FactoryMethod {public static void main(String[] args) {Application application = new Application();Product product = application.getObject("0");product.method1();}
}interface Product{void method1();
}class ProductA implements Product{public void method1(){System.out.println("ProductA.method1 executed.");}
}class ProductB implements Product{public void method1(){System.out.println("ProductB.method1 executed.");}
}class SimpleFactory{public static Product createProduct(String type){if ("0".equals(type)){return new ProductA();}else if ("1".equals(type)){return new ProductB();}else {return null;}}
}class Application {private Product createProduct(String type){return SimpleFactory.createProduct(type);}Product getObject(String type){Product product = createProduct(type);return product;}
}

工厂方法

public class FactoryMethod {public static void main(String[] args) {Application application = new ConcreteProductA();Product product = application.getObject();product.method1();}
}interface Product{void method1();
}class ProductA implements Product{public void method1(){System.out.println("ProductA.method1 executed.");}
}class ProductB implements Product{public void method1(){System.out.println("ProductB.method1 executed.");}
}class SimpleFactory{public static Product createProduct(String type){if ("0".equals(type)){return new ProductA();}else if ("1".equals(type)){return new ProductB();}else {return null;}}
}//class Application {
//    private Product createProduct(String type){
//        return SimpleFactory.createProduct(type);
//    }
//
//    Product getObject(String type){
//        Product product = createProduct(type);
//        return product;
//    }
//}abstract class Application {abstract Product createProduct();Product getObject(){Product product = createProduct();return product;}
}// 工厂方法具体实现类
class ConcreteProductA extends Application{@OverrideProduct createProduct() {// 。。。业务逻辑缺省return new ProductA();}
}class ConcreteProductB extends Application{@OverrideProduct createProduct() {// 。。。业务逻辑缺省return new ProductB();}
}

主要优点

  1. 将具体产品和创建者解耦
  2. 符合单一职责原则
  3. 符合开放封闭原则

应用场景

  1. 抽象:当你不知道该使用对象的确切类型的时候。
  2. 扩展:当你希望为库或框架提供扩展其内部组件的方法时。

源码中的应用

// java api
// 静态工厂方法

Calendar.getInstance()
java.text.NumberFormat.getInstance()
java.util.ResourceBundle.getBundle()

// 工厂方法

java.net.URLStreamHandlerFactory
javax.xml.bind.JAXBContext.createMarshaller

创作不易,点赞、关注、收藏
创作不易,点赞、关注、收藏
创作不易,点赞、关注、收藏
请添加图片描述

http://www.khdw.cn/news/67831.html

相关文章:

  • html个人网站制作网络营销企业有哪些
  • 什么 门户网站手机上怎么制作网页
  • 类网站建设北京搜索关键词优化
  • 网站建设与管理 管理课程seo建站网络公司
  • 网页设计与网站建设书籍上海好的seo公司
  • 更改各网站企业信息怎么做统计工具
  • 如何创建网站详细步骤东莞网站seo公司
  • 网站旁边的小图标怎么做的搜索引擎优化的方法包括
  • 网站设计的出路他达拉非片的作用及功效副作用
  • 网站开发工程师待遇2022年度最火关键词
  • 企业网站开发注意什么免费推广的平台
  • 菏泽的给公司做网站的百度搜索关键词排名靠前
  • 网站虚拟主机内存不足能不能链接外贸建站优化
  • 域名注册哪里最便宜百度seo价格
  • 国内做香港视频网站有哪些惠州seo推广优化
  • 新媒体网站建设方案建站教程
  • 汕头建站模板搭建苏州网站制作
  • 某个网站做拍卖预展的好处2023年8月新冠又来了
  • 中国风网站模板下载营销策划书案例
  • photoshop下载安装百度关键词优化大
  • 网站开发前端的工作内容是什么如何推广一个品牌
  • 淘宝网站建设可靠今日头条网页版入口
  • 黄浦做网站谷歌下载官网
  • 怎么做flash网站优化大师电脑版官网
  • 做兼职哪个网站好北京建设网站公司
  • 浙江省建设厅网站查询宁波seo外包服务商
  • p2p网贷网站建设方案搜索广告排名
  • 给你一个网站你如何做优化seo点石论坛
  • 法治建设的网站760关键词排名查询
  • 陈村网站设计站长网站大全