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

网站建设前期准备方案荆州网站设计

网站建设前期准备方案,荆州网站设计,网站更新方案,网站备案归属地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.yayakq.cn/news/105221/

相关文章:

  • 360云主机可以建设网站吗专业的餐饮网站建设
  • 查看网站注册信息百度网盟推广步骤
  • 河南整站关键词排名优化软件公司做网站会计凭证怎么做
  • 重庆所有做网站的公司商业网站设计专业
  • 网站上seo怎么做石家庄专业网站设计电话
  • 网站建设傲鸿网站建设公司怎么
  • 印度喜欢用什么框架做外贸网站WordPress文章图片自动圆角
  • 网站建设培训学校微信公众号手机网站
  • 大岭山镇网站建设软件开发的五个基本步骤
  • 建设九九网站旅游网站建设规划书主题
  • 做搜狗手机网站长尾千万别学网络工程
  • 龙泉市建设局门户网站做it的在哪个网站找工作
  • 公积金门户网站建设方案企业网站每年要多少钱
  • 网页设计新建站点伊宁市做网站
  • 建设信用网站的作用全球做的比较好的网站
  • 深圳市做物流网站做网站遇到的问题及解决方法
  • 专门做自由行的网站目前比较火的电商平台有哪些
  • 什么做书籍的网站好嵊州市住房和城乡建设局网站
  • 做馋嘴小栈官方网站长春网站制作专业
  • 浅谈全球五金网电子商务网站建设做照片相册最好的网站
  • 怎么找网站啊学校网站源码开源
  • 义乌建网站wordpress图片托管
  • 网站用户登录流程图重庆妇科医院咨询
  • 开发公司空置房物管费归口什么费用重庆企业网站优化
  • 温州建设小学网站首页网站推广实施计划
  • 做平面设计必知的网站合肥做双语外贸网站
  • 网站评价系统源码少儿编程课
  • 网站收录工具门户网站技术方案
  • 好网站建设公司有哪些优秀的网站建设托管
  • 国际贸易网站哪家好济南商城网站开发