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

node.js做网站西安网站建设制作公司

node.js做网站,西安网站建设制作公司,铜陵市建投公司官网,直播网站模板1.模式定义 定义一个用于创建对象的接口,让子类决定实例化哪一个类。Factory Method 使得一个类的实例化延迟到子类 2.使用场景 1.当你不知道改使用对象的确切类型的时候 2.当你希望为库或框架提供扩展其内部组件的方法时 主要优点: 1.将具体产品和创建…

1.模式定义

定义一个用于创建对象的接口,让子类决定实例化哪一个类。Factory Method 使得一个类的实例化延迟到子类

2.使用场景

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

主要优点:

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

3.具体实现

3.1 代码示例

简单工厂:
// 简单工厂
class SimpleFactory {public static Product createProduct(String type) {if ("A".equals(type)) {return new ProductA();} else if ("B".equals(type)) {return new ProductB();} else {return null;}}
}

工厂方法

// 工厂方法
abstract class ProductFactory {/*** 创建产品** @return*/abstract Product createProduct();public Product getObject() {Product product = createProduct();return product;}
}class NonCreateProductA extends ProductFactory {@OverrideProduct createProduct() {return new ProductA();}
}class NonCreateProductB extends ProductFactory {@OverrideProduct createProduct() {return new ProductB();}
}

示例代码

// 实例代码
interface Product {String getName();
}class ProductA implements Product {@Overridepublic String getName() {return "Name's product A";}
}class ProductB implements Product {@Overridepublic String getName() {return "Name's product B";}
}

测试代码

public class FactoryMethodTest {public static void main(String[] args) {// 简单工厂测试代码Product simpleA = SimpleFactory.createProduct("A");System.out.println(simpleA.getName());Product simpleB = SimpleFactory.createProduct("B");System.out.println(simpleB.getName());// 工厂方法测试代码Product pa = new NonCreateProductA().getObject();System.out.println(pa.getName());Product pb = new NonCreateProductB().getObject();System.out.println(pb.getName());}}

3.2 源码中的应用

// java api
// 静态工厂方法
Calendar.getInstance()
java.text.NumberFormat.getInstance()
java.util.ResourceBundle.getBundle()// 工厂方法
java.net.URLStreamHandlerFactory
javax.xml.bind.JAXBContext.createMarshaller

http://www.wangmingla.cn/news/49965.html

相关文章:

  • 迈若网站建设网站开发步骤
  • 有哪些企业建设网站买链接
  • 怎样做自己的国外网站湖南seo博客seo交流
  • 网站三元素怎么做推广普通话的宣传语
  • 合肥市蜀山区建设局网站百度网址大全电脑版
  • 多商户wordpress简述seo和sem的区别
  • vps绑定多个网站北京网站优化快速排名
  • wordpress编辑权限设置优化百度涨
  • 深圳做网站哪家公司好网络营销专业好就业吗
  • 网站验证图标免费发广告网站
  • 老年大学网站开发顶尖文案
  • 网站双链接怎么做百度推广客服电话
  • 网站内容建设流程百度引擎入口官网
  • 英文网站如何自己做一个软件
  • 建站行业span分析免费推广途径与原因
  • 国外域名。国内网站百度关键词热度排名
  • 做视频直播网站百度中心人工电话号码
  • 如何做网站免费教程网上营销型网站
  • 以小说名字做网站的小说网企业推广平台
  • 安徽省城乡与住房建设厅网站抖音seo教程
  • 威海高区建设局网站黑马培训价目表
  • 南通制作手机网站全国疫情最新数据
  • 母婴网站建设海外推广营销 平台
  • 手机详情页设计模板seo关键词排名技巧
  • 支付网站开发费可以做无形资产百度网址大全简单版
  • 电商型企业网站建设海南网站设计
  • 校园网络方案设计seo流量排名工具
  • 做兼职去什么网站怎么去推广自己的网站
  • 赤壁网站开发百度官网网站首页
  • 如何制作手机网站怎样进行seo优化