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

做网站前端用什么技术好一个网站如何推广

做网站前端用什么技术好,一个网站如何推广,奥美广告公司简介,jsp网站开发关键技术创建型-抽象工厂 角色 抽象工厂: 声明创建一个族产品对象的方法,每个方法对应一中产品,抽象工厂可以是接口,也可以是抽象类;具体工厂: 实现抽象工厂接口,复杂创建具体的一族产品;抽…

创建型-抽象工厂

角色

  1. 抽象工厂: 声明创建一个族产品对象的方法,每个方法对应一中产品,抽象工厂可以是接口,也可以是抽象类;
  2. 具体工厂: 实现抽象工厂接口,复杂创建具体的一族产品;
  3. 抽象产品:定义一类产品的公共接口,描述一类产品的特定行为或者属性;
  4. 具体产品:实现抽象产品接口,定义具体产品的特定行为和属性;

其中,一族的概念可根据业务情况进行分族。比如:形状,颜色可分为两个族,再比如,植物, 动物也可以分为两个族。族的概念根据区分维度不同可分为不同的族;

图解

在这里插入图片描述

实现案例

这个案例中按照年龄将人分为小孩,老年人,中年人三族,产品分为上衣、裤子、鞋子三个种类;其中实现了老年人和小孩两个族衣服的抽象工厂。

抽象产品类:

/** 上衣抽象类*/
public abstract class Jacket {public abstract void wearJacket();
}/** 鞋子抽象类*/
public abstract class Shoes {public abstract void wearShoes();
}/** 裤子抽象类*/
public abstract class Trousers {public abstract void wearTrousers();
}

具体产品类:

/** 小孩衣服的具体类*/public class ChildishJacket extends Jacket {@Overridepublic void wearJacket() {System.out.println("小孩的上衣");}
}
public class ChildishShoes extends Shoes {@Overridepublic void wearShoes() {System.out.println("小孩的鞋子");}
}
public class ChildishTrousers extends Trousers {@Overridepublic void wearTrousers() {System.out.println("小孩的裤子");}
}/** 老年人衣服的具体类*/
public class OldJacket extends Jacket {@Overridepublic void wearJacket() {System.out.println("老年人上衣");}
}
public class OldTrousers extends Trousers {@Overridepublic void wearTrousers() {System.out.println("老年人的裤子");}
}
public class OldShoes extends Shoes {@Overridepublic void wearShoes() {System.out.println("老年人的鞋子");}
}

抽象工厂类:

/** 生产衣服的抽象工厂*/
public abstract class AbstractClothesFactory {public abstract Jacket createJacket();public abstract Shoes createShoes();public abstract Trousers createTrousers();
}

具体工厂类:

/** 儿童衣服生产工厂*/
public class ChildishClothesFactory extends AbstractClothesFactory {private static ChildishClothesFactory INSTANCE = new ChildishClothesFactory();public static ChildishClothesFactory getInstance(){return INSTANCE;}@Overridepublic Jacket createJacket() {return new ChildishJacket();}@Overridepublic Shoes createShoes() {return new ChildishShoes();}@Overridepublic Trousers createTrousers() {return new ChildishTrousers();}
}/** 老年人衣服生产工厂*/
public class OldClothesFactory extends AbstractClothesFactory{private static OldClothesFactory INSTANCE = new OldClothesFactory();public static OldClothesFactory getInstance(){return INSTANCE;}@Overridepublic Jacket createJacket() {return new OldJacket();}@Overridepublic Shoes createShoes() {return new OldShoes();}@Overridepublic Trousers createTrousers() {return new OldTrousers();}
}

使用:

public class Main {public static void main(String[] args) {//生产儿童一族的衣服ChildishClothesFactory childishClothesFactory = ChildishClothesFactory.getInstance();Jacket childishJacket = childishClothesFactory.createJacket();Shoes childishShoes = childishClothesFactory.createShoes();Trousers childishTrousers = childishClothesFactory.createTrousers();//生产老年人一族的衣服OldClothesFactory oldClothesFactory = OldClothesFactory.getInstance();Jacket oldJacket = oldClothesFactory.createJacket();Shoes oldShoes = oldClothesFactory.createShoes();Trousers oldTrousers = oldClothesFactory.createTrousers();childishJacket.wearJacket();oldJacket.wearJacket();}
}

总结

  1. 抽象工厂是生产一族的产品,族的概念可根据不同的业务规则区分。
  2. 扩展产品族非常困难。增加一个新的产品族需要修改抽象工厂和所有具体工厂的代码。
  3. 对于新增族来说,满足开闭原则,而对于新增产品来说,不满足开闭原则。
http://www.hkea.cn/news/225950/

相关文章:

  • 360应用商店seo服务套餐
  • 废橡胶网站建设个人博客网页设计
  • 什么网站做一手项目好域名查询官网
  • 做日用品的要找什么网站好站长工具端口检测
  • 贵州软件开发 网站开发手机版百度一下
  • 企业网站建立答辩问题百度怎么发布广告
  • 温州快建网站地推拉新接单网
  • 濉溪县城乡建设委员会燃气办网站热狗网站排名优化外包
  • 网站能不能自己做免费的seo教程
  • 湖南的商城网站建设优化教程网下载
  • 做网站需要哪些工程师西安seo诊断
  • tp做的网站封装成app2023北京封控了
  • 增城做网站要多少钱推广普通话手抄报
  • 石家庄网站系统开发智能搜索引擎
  • 迅速网站网络营销平台推广方案
  • 学前端要逛那些网站微信引流主动被加软件
  • 韩国flash网站免费手机网站建站平台
  • 东莞做网站卓诚网络昆明长尾词seo怎么优化
  • WordPress个性萌化插件郑州seo优化哪家好
  • 专业手机移动网站建设免费的seo优化
  • 西安网站建设王永杰域名注册 万网
  • 网站营销优化方案北京做的好的seo公司
  • 企业网站排名提升软件优化南宁seo优化
  • 创意合肥网站建设杭州seo公司排名
  • 网站专题页是什么中国十大关键词
  • 五月天做网站网络策划与营销
  • 高校网站如何建设论文谷歌官网下载
  • 做网站内容软件个人网站怎么做
  • 收废铁的做网站有优点吗海南百度推广开户
  • wordpress 二维码插件下载信阳搜索引擎优化