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

定制v下载安卓青岛网站seo公司

定制v下载安卓,青岛网站seo公司,htmlcss做网站首页,asp.net网站部署教程前面我们介绍了简单工厂模式,在创建对象前,我们需要先创建工厂,然后再通过工厂去创建产品。 如果将工厂的创建方法static化,那么无需创建工厂即可通过静态方法直接调用的方式创建产品: // 工厂类,定义了静…

前面我们介绍了简单工厂模式,在创建对象前,我们需要先创建工厂,然后再通过工厂去创建产品。

如果将工厂的创建方法static化,那么无需创建工厂即可通过静态方法直接调用的方式创建产品:

// 工厂类,定义了静态工厂方法
class SimpleFactory {
public:static Product* createProduct(const string& type) {if (type == "A") {return new ConcreteProductA();} else if (type == "B") {return new ConcreteProductB();} else {return nullptr;}}
};

将工厂创建方法改成 static 的优缺点如下:

优点:

  1. 无需实例化工厂类:使用静态工厂方法可以直接通过类名调用,无需创建工厂类的实例,简化了代码。
  2. 不依赖对象状态:静态工厂方法不依赖于对象的状态,因此可以保持更好的纯粹性和确定性。
  3. 提高代码可读性:静态工厂方法可以直接通过类名调用,使得代码更加清晰和直观。

缺点:

  1. 不容易被子类继承和修改:静态方法在子类中不能被重写,因此不太适合需要在子类中定制创建逻辑的场景。
  2. 难以进行单元测试:静态方法难以进行单元测试,特别是在需要模拟对象行为的情况下。
  3. 违背开闭原则:静态工厂方法难以支持新增产品类型的扩展,需要修改工厂类的代码,违背了开闭原则。

总的来说,静态工厂方法在某些情况下可以简化代码,提高可读性,但也存在一些局限性,特别是在需要灵活扩展和可测试性方面表现不佳。在实际应用中,需要根据具体的场景和需求来选择是否使用静态工厂方法。

静态工厂方法还可以直接集成到类中,简称self create。

class A {private:A() {} // 私有构造函数,确保不能通过外部代码创建新实例public:static A* CreateInstance() {return new A(); // 创建新实例并返回指针}public:void DoSomething() {// 实现具体功能}
};
http://www.tj-hxxt.cn/news/81297.html

相关文章:

  • web网站建设一题库百度电脑版网页版
  • 网站订制公司html做一个简单的网页
  • 做公司网站要走哪些流程全网营销网络推广
  • 做网站要先做商标吗商业推广
  • 万网网站域名云盘搜索引擎入口
  • 河北网站建设大全建一个自己的网站
  • 济南网站建设运营网络推广专员岗位职责
  • c 做的网站怎么上传图片2022年最火的新闻摘抄
  • 微信做淘宝客 网站打不开英文seo是什么
  • 电商在线官方福建seo外包
  • 网站如何做邮箱订阅号产品营销策划方案怎么做
  • 沈阳三好街附近做网站精准引流客源的方法可靠吗
  • 招聘网站如何做免费域名怎么注册
  • 今天疫情最新公布windows优化大师官方网站
  • 门户类网站如何做策划东莞网络营销公司
  • 淘宝 网站建设指数基金怎么选
  • 怎样提高网站打开速度慢百度竞价推广点击器
  • wordpress用户注册地址台州关键词优化报价
  • 品牌名字大全深圳seo论坛
  • 做招聘网站需要做什么公司班级优化大师官网下载
  • wordpress仿站js如何导入广州网站优化软件
  • 如果启动浏览器就能直接打开一个常用的网站主页_要怎么做?企业如何开展网络营销
  • 利用angular做的网站实时热榜
  • 英德住房和城乡建设局网站广告联盟点击赚钱平台
  • wordpress群晖套件廊坊seo培训
  • 微信网站开发今日郑州头条最新新闻
  • 网站友情链接模块介绍谷歌浏览器下载安装2022
  • 江门网站制作网站优量汇广告平台
  • 定制开发网站多少钱网站打开
  • 有没有兼职做网站的网站建设平台