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

建设网站能赚钱吗内容营销

建设网站能赚钱吗,内容营销,网站设计学习,石碣镇仿做网站装饰模式(Decorator),动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活。 Component类: abstract class Component : MonoBehaviour {public abstract void Operation(); …

         装饰模式(Decorator),动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活。

Component类:

abstract class Component : MonoBehaviour
{public abstract void Operation();
}

 ConcreteComponent类:

class ConcreteComponent : Component
{public override void Operation(){Debug.Log("具体对象操作");}
}

 Decorator类:

abstract class Decorator : Component
{protected Component component;public void SetComponent(Component component){this.component = component;}public override void Operation(){if(component != null){component.Operation();}}
}

 ConcreteDecoratorA类:

class ConcreteDecoratorA : Decorator
{//此类特有的功能,区别于ConcreteDecoratorBprivate string addState;public override void Operation(){//首先运行元Component的Operation()//再执行本类功能,对原Component进行修饰base.Operation();addState = "new state";Debug.Log("具体装饰对象A的操作");}
}

  ConcreteDecoratorB类:

class ConcreteDecoratorB : Decorator
{public override void Operation(){//首先运行元Component的Operation()//再执行本类功能,对原Component进行修饰base.Operation();AddBehavior();Debug.Log("具体装饰对象B的操作");}//本类特有的方法private void AddBehavior(){}
}

客户端:

class Main : MonoBehaviour
{private void Start(){ConcreteComponent c = new ConcreteComponent();ConcreteDecoratorA a = new ConcreteDecoratorA();ConcreteDecoratorB b = new ConcreteDecoratorB();a.SetComponent(c);b.SetComponent(a);b.Operation();}
}

输出结果:

具体装饰对象A的操作 具体装饰对象B的操作 具体对象操作

        装饰模式是利用SetComponent来对对象进行包装的。这样每个装饰对象的实现就和如何使用这个对象分离开了,每个装饰对象只关心自已的功能,不需要关心如何被添加到对象链当中。        

        如果只有一个Concrete Component类而没有抽象的Component类,那么Decorator类可以是Concrete Component的一个子类。同样道理,如果只有一个Concrete Decorator类,那么就没有必要建立一个单独的Decorator类,而可以把Decorator和Concrete Decorator的责任合并成一个类。

        起初的设计中,当系统需要新功能的时候,是向旧的类中添加新的代码。这些新加的代码通常装饰了原有类的核心职责或主要行为,但这种做法的问题在于,它们在主类中加入了新的字段,新的方法和新的逻辑,从而增加了主类的复杂度,而这些新加入的东西仅仅是为了满足一些只在某种特定情况下才会执行的特殊行为的需要。而装饰模式却提供了一个非常好的解决方案,它把每个要装饰的功能放在单独的类中,并让这个类包装它所要装饰的对象,因此,当需要执行特殊行为时,客户代码就可以在运行时根据需要有选择地、按顺序地使用装饰功能包装对象了。

http://www.dinnco.com/news/33385.html

相关文章:

  • 工业设计公司深圳本也设计宁波seo搜索平台推广专业
  • 营销型网站建设 合肥怎么建网页
  • 营销网站建设联系方式定制网站建设电话
  • 高端的金融行业网站开发双桥seo排名优化培训
  • 义乌批发市场进货网北京seo网络优化招聘网
  • 网站在线客服系统哪个好百度店铺免费入驻
  • 劳务派遣和外包一样吗seo排名赚挂机赚钱软件下载
  • 导购网站怎么建设站长之家域名信息查询
  • windows做网站的工具百度应用宝
  • 福州最好的网站建设服务商东莞seo软件
  • 深圳市建设设计院网站关键词搜索神器
  • 网页设计师都在什么网站上面找素材深圳百度关键词排名
  • 开发次元世界重庆seo网站排名
  • 做外贸都用什么网站百度一下你就知道官网
  • 天津 企业网站建设口碑营销的重要性
  • 外贸网站平台排名百度竞价平台官网
  • html5单页模板五年级上册语文优化设计答案
  • 网站建设方法网络优化工作应该怎么做
  • 设计师网站导航今日发生的重大国际新闻
  • 做调查问卷的网站有什么seo 推广怎么做
  • 怎么建立网站管理系统2345网址大全设主页
  • 台州网站制作 外贸软件网站排行榜
  • 手机网站的域名网络营销渠道有哪几种
  • 怎么做谷歌收录的网站seo企业顾问
  • 织梦做的网站别人提交给我留的言我去哪里看seo自媒体培训
  • 电子商务网站建设 实验分析免费顶级域名申请网站
  • 深圳有做网站最近价格百度推广官网电话
  • 互联网+中央督查关键词优化的主要工具
  • 网站建设与推广的步骤推广平台都有哪些
  • 手机老是下载一些做任务的网站谷歌海外推广怎么做