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

360极速怎么屏蔽网站建个人网站需要哪些

360极速怎么屏蔽网站,建个人网站需要哪些,大淘客网站商品做淘口令,sns网站社区需求分析文档什么是模板方法模式 模板方法模式定义了一个操作中算法的框架#xff0c;而将一些步骤延迟到子类中#xff0c;使得子类可以不改变一个算法的结构就可以重定义该算法的某些特定步骤。     模板方法模式主要包含几下几个角色#xff1a;         AbstractClass(抽…什么是模板方法模式 模板方法模式定义了一个操作中算法的框架而将一些步骤延迟到子类中使得子类可以不改变一个算法的结构就可以重定义该算法的某些特定步骤。     模板方法模式主要包含几下几个角色         AbstractClass(抽象类)在抽象类中定义了一系列基本操作这些操作可以是具体的也可以是抽象的每一个基本操作对应算法的一个步骤在子类中可以重定义或实现这些步骤。同时在抽象类中实现了一个模板方法用于定义一个算法的框架模板方法不仅可以调用抽象类中实现的方法也可以调用子类中实现的基本方法。         ConcreteClass(具体类)是抽象类的子类用于实现父类中声明的抽象方法也可以覆盖父类中已经实现的具体方法。 模板方法模式的优缺点 优点 在父类中定义模板方法子类实现细节的处理并不会改变模板方法中的执行步骤。提取了公共逻辑放到父类中提高代码复用性。可在子类中重定义父类中的方法提高了扩展性。增加新的子类方便符合单一职责原则和开闭原则。 缺点 需要为每一个基本方法的不同实现提供一个子类如果父类中可变基本方法过多将会导致类的个数增加。系统更加庞大设计更加抽象。 模板方法模式的应用场景 对一些复杂的算法进行分割将算法中固定不变的部分设计为模板方法和父类具体方法一些可变的部分由子类实现。多个类中有公共行为应该被提取出来到父类中减少代码重复。需要通过子类来决定父类算法中某个步骤是否执行实现子类对父类的反向控制。 模板方法模式的案例 // 抽象类 public abstract class SoyaMilk {final void make() {select();if (customerWantCondiments()) {addCondiments();}soak();beat();}void select() {System.out.println(第一步选择好的新鲜黄豆 );}abstract void addCondiments();void soak() {System.out.println(第三步 黄豆和配料开始浸泡 需要3小时 );}void beat() {System.out.println(第四步黄豆和配料放到豆浆机去打碎 );}boolean customerWantCondiments() {return true;} }// 具体类 public class RedBeanSoyaMilk extends SoyaMilk {Overridevoid addCondiments() {System.out.println( 加入上好的红豆 );}}public class PureSoyaMilk extends SoyaMilk {Overridevoid addCondiments() {}Overrideboolean customerWantCondiments() {return false;}}public class PeanutSoyaMilk extends SoyaMilk {Overridevoid addCondiments() {System.out.println( 加入上好的花生 );}}public static void main(String[] args) {//制作红豆豆浆System.out.println(----制作红豆豆浆----);SoyaMilk redBeanSoyaMilk new RedBeanSoyaMilk();redBeanSoyaMilk.make();System.out.println(----制作花生豆浆----);SoyaMilk peanutSoyaMilk new PeanutSoyaMilk();peanutSoyaMilk.make();System.out.println(----制作纯豆浆----);SoyaMilk pureSoyaMilk new PureSoyaMilk();pureSoyaMilk.make(); } 模板方法模式在源码中的应用 InputStream // 抽象类 public abstract class InputStream implements Closeable {public abstract int read() throws IOException;public int read(byte b[]) throws IOException {return read(b, 0, b.length);}...... }// 具体类 public class FileInputStream extends InputStream {public int read() throws IOException {return read0();}public int read(byte b[]) throws IOException {return readBytes(b, 0, b.length);}...... }
http://www.w-s-a.com/news/921623/

相关文章:

  • 规模以上工业企业的标准北京seo结算
  • 软件开发过程模型如何做网站性能优化
  • 网站建站公司广州南京江北新区楼盘
  • 哪些做展架图的网站好开发公司2022年工作计划
  • 磨床 东莞网站建设wordpress下载类主题系统主题
  • 免费学编程网站芜湖做网站都有哪些
  • 能发外链的网站门户网站网页设计规范
  • 网站建设所需人力南城区网站建设公司
  • 网站做图尺寸大小手机模板网站模板下载网站有哪些内容
  • 德阳市建设管理一体化平台网站做美食网站
  • 怎么做自己的推广网站2024年瘟疫大爆发
  • vps正常网站打不开linux网站建设
  • 福州网站快速排名在一个网站的各虚拟目录中默认文档的文件名要相同
  • 网站开发 流程图网站开发用哪个linux
  • 怎么用自己电脑做服务器发布网站吗seo门户网价格是多少钱
  • 备案网站可以做影视站网站400
  • 四川住房与城乡建设部网站注册登记
  • 网站建设第三方沈阳工程最新动态
  • 兰州做网站客户上海企业在线登记
  • 新乡公司做网站wordpress被大量注册
  • 小语种服务网站公众号平台建设网站
  • 免费做mc皮肤网站企业网站建设合同模板
  • 做网站可以申请个体户么网站的定位分析
  • jsp做的零食网站下载wordpress侧边栏折叠
  • 帝国网站单页做301南京旅游网站建设公司
  • 网站sem优化怎么做网站建设推广安徽
  • 比较好的室内设计网站潍坊网络科技
  • 南宁网站建设公设计联盟网站
  • 多个图表统计的网站怎么做百度推广费2800元每年都有吗
  • 连江县住房和城乡建设局网站企业类网站模版