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

陕西省建设网站wordpress古文主题

陕西省建设网站,wordpress古文主题,如何修改WordPress备份中的网址,dz做的网站容易收录吗一.基本内容1 . 实例有各种鸭子#xff08;野鸭#xff0c;北京鸭子#xff0c;水鸭等#xff0c;鸭子有各种行为#xff0c;比如飞#xff0c;叫等显示鸭子的信息传统方法解决#xff1a;鸭子为抽象类#xff0c;具体鸭子继承抽象类2.传统方法的不足#xff1a;其他鸭…一.基本内容1 . 实例有各种鸭子野鸭北京鸭子水鸭等鸭子有各种行为比如飞叫等显示鸭子的信息传统方法解决鸭子为抽象类具体鸭子继承抽象类2.传统方法的不足其他鸭子都继承了抽象类所以fly让所有子类都会飞这不正确上面的问题其实是继承带来的问题对类的局部改动尤其超类的局部改动会影响其他部分会有溢出效应为了改进问题可以通覆盖fly方法解决 ---- 覆盖解决如果我们有一个玩具鸭子这样需要玩具鸭子覆盖所有的实现方法麻烦 解决方法 ----- 策略模式3 . Strategy Pattern 也叫政策模式定义算法族策略族分别封装起来让他们之间可以互相替换此模式让算法的变化独立于使用算法的客户4 . 体现了几个设计原则把变化的代码从不变的代码中分离出来针对接口编程而不是具体类定义了策略接口多用组合/聚合少用继承通过组合方式使用策略4.采用了面向对象的继承和多态机制5.优点算法可以自由切换实现抽象策略就成为策略家族的一个成员通过封装角色对其进行封装保证对外提供“可自由切换”的策略避免使用多重的条件判断使用策略简化操作避免了条件语句判断扩展性好6.缺点策略类数据增多所有的策略类对外暴露7.注意事项策略模式的关键是分析变化与不变的部分 核心思想是多元组合/聚合少用继承用行为类组合而不是行为的继承体现了“对修改关闭对扩展开放”的原则客户端增加行为不要修改源代码只要添加一种策略即可避免了使用多重转移语句提供了可以替换继承关系的方法将算法封装在独立的Strategy类中似的可以独立于Context改变他易于切换理解扩展每添加一个策略就就增加一个类当策略过多时就会导致类的数目庞大如果系统中的一个策略家族的具体策略数量超过4个。则需要考虑使用混合模式解决策略类膨胀和对外暴露的问题8.代码实现public interface Fly { void fly();//子类具体实现 }public class GoodFly implements Fly{Override public void fly() {System.out.println(飞翔技术非常好); }}public class BadFly implements Fly{ Override public void fly() {System.out.println(飞翔技术一般); }}public class NoFly implements Fly{ Override public void fly() {System.out.println(不会飞); }}public abstract class Duck { //属性策略接口 Fly fly;public Duck() {}public abstract void display();public void quack() {System.out.println(鸭子嘎嘎叫。。); } public void swim() {System.out.println(鸭子游泳); } public void fly() {//改进if(fly!null) {fly.fly();} } } public class PekingDuck extends Duck{ public PekingDuck() {fly new NoFly(); }Override public void display() {// TODO Auto-generated method stubSystem.out.println(北京鸭子); }}public class ToyDuck extends Duck{ public ToyDuck() {fly new NoFly(); } Override public void display() {System.out.println(玩具鸭子);} //重写父类的所有方法 public void quack() {System.out.println(玩具鸭子不能叫。。); } public void swim() {System.out.println(玩具鸭子不能游泳); } public void fly() {System.out.println(玩具鸭子不能飞); } }public class Client { public static void main(String[] args) {WildDuck wduck new WildDuck();wduck.fly();PekingDuck pduck new PekingDuck();pduck.fly(); } }9.应用Arrays使用了策略模式Arrays的Comparator就使用了策略模式多个类只区别在表现行为不同可以使用Strategy模式在运行时动态选择具体要执行的行为。需要在不同情况下使用不同的策略(算法)或者策略还可能在未来用其它方式来实现。 对客户隐藏具体策略(算法)的实现细节彼此完全独立。
http://www.dnsts.com.cn/news/78928.html

相关文章:

  • 南宁自助建站模板做创意ppt网站有哪些
  • 云南建设厅和网站河南app定制开发
  • 云南省建设工程档案馆网站wordpress不用邮件验证注册
  • 网站在百度上做推广怎样做镇江微淘软件开发
  • 茂名公司网站设计团队网站制作合肥
  • 网站换域名做301宣传画册设计
  • 如何创造网站html访问wordpress
  • 做网站采集内容太原建站公司有哪些
  • 创建网站的app上网行为管理
  • 江苏建设类高级工程师在那个网站公示信誉好的龙岗网站制作
  • 晋城中英文网站建设黄山最佳旅游攻略
  • dw怎么做网站教程营销策划方案怎么做
  • 技术网站有哪些做同城网站有哪些
  • 宝宝投票网站怎么做软件下载网站地址
  • 南宁市网站建设价格龙华网站建设设计
  • 地方社区网站 备案宁波网站制作企业
  • 网站一般采用的设计方案当前网站建设的主要方法
  • 做电商网站必需知道qc快手自媒体平台注册入口
  • 用户体验网站旅游网站建设的好处
  • 专业网站开发哪家专业竞价恶意点击报案
  • 网站优化推广公司推荐建站系统开发
  • 公司做免费网站建设国外网站建设素材
  • h5网站建设方案seo排名赚app最新版本
  • 服务器放多个网站网页设计与制作期末作业源代码
  • 网站开发充值功能可信的手机网站建设
  • 免费的行情软件网站不用下载陕西城乡住房建设部网站
  • 做百度网站好吗建设电影网站需要什么
  • 晋中市科技馆网站建设wordpress钩子大全
  • wordpress收费么企业网站seo排名优化
  • 山东网站制作公司排名怎么在百度搜索到我的网站