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

如何用织梦建网站谷歌网站

如何用织梦建网站,谷歌网站,做软件开发视频网站,邯郸网站设计申请一、设计原则 1、找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。 2、针对接口编程,而不是针对实现编程。 3、多用组合,少用继承。 4、为交互对象之间的松耦合设计而努力 5、开放-关闭原则…

一、设计原则

1、找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。

2、针对接口编程,而不是针对实现编程。

3、多用组合,少用继承。

4、为交互对象之间的松耦合设计而努力

5、开放-关闭原则:类应该对扩展开放,对修改关闭

二、设计模式

1、策略模式

定义了算法族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。

实例:模拟鸭子

最初采用OO技术,设计一个鸭子的超类,并让各种鸭子继承此超类,后采用继承,因为鸭子的行为在子类里不断的改变,并且让所有的子类都有这些行为是不恰当的,用接口一开始好像挺不错,但接口不具有实现代码,所以继承接口无法达到代码的复用。

采用策略模式设计该功能,代码如下:

 

 

/**

 * 

 *设计一个飞行行为接口,所有飞行行为类必须实现的方法

 *

 */

public interface FlyBehavior {

 

public void fly();

}

 

/**

 * 

 * 飞行行为的实现,给会飞的鸭子使用

 *

 */

public class FlyWithWings implements FlyBehavior{

 

@Override

public void fly() {

System.out.println("i am flying!!!");

}

 

}

 

 

/**

 * 

 * 飞行行为的实现,给不会飞的鸭子使用

 *

 */

public class FlyNoway implements FlyBehavior{

 

@Override

public void fly() {

System.out.println("i cannot fly!!");

}

 

}

 

 

/**

 * 

 *设计一个叫声行为接口,所有叫行为类必须实现的方法

 *

 */

public interface QuackBehavior {

 

public void quack();

}

/**

 * 

 * 给呱呱叫的鸭子使用

 *

 */

public class Quack implements QuackBehavior{

 

 

@Override

public void quack() {

System.out.println("呱呱呱。。。");

}

 

}

/**

 * 

 * 给吱吱叫的鸭子使用

 *

 */

public class MuteQuack implements QuackBehavior{

 

 

@Override

public void quack() {

System.out.println("吱吱吱。。。");

}

 

}

/**

 * 

 * 给不会叫的鸭子使用

 *

 */

public class Squeak implements QuackBehavior{

 

 

@Override

public void quack() {

System.out.println("不会叫。。。");

}

 

}

 

 

/**

 * 

 * 鸭子父类

 *

 */

public abstract class Duck {

//为行为接口类型声明两个引用变量,所有鸭子类都继承他们

//飞行行为类

FlyBehavior flyBehavior;

//叫声行为类

QuackBehavior quackBehavior;

 

public abstract void display();

 

//委托给行为类

public void performFly(){

flyBehavior.fly();

}

//委托给行为类

public void performQuack(){

quackBehavior.quack();

}

 

public void swim(){

System.out.println("i can swimming!!!");

}

}

/**

 * 

 * 绿头鸭子类

 *

 */

public class MallardDuck extends Duck{

 

public MallardDuck(){

//绿头鸭使用Quack类处理呱呱叫,所以当performQuack()被调用时,

//叫的职责被委托给Quack对象,而我们得到了真正的呱呱叫

quackBehavior = new Quack();

flyBehavior = new FlyWithWings();

}

@Override

public void display() {

System.out.println("我是绿头鸭!!");

}

 

}


至此一个策略模式实例已经结束,下一篇将学习下观察者模式!!
 

http://www.tj-hxxt.cn/news/46389.html

相关文章:

  • 秦皇岛旅游攻略seo搜索引擎优化试题
  • 网站建设基本步骤顺序外贸平台排名
  • 做网站要多少知识 java游戏推广合作平台
  • 暴走漫画网站建设目的四川游戏seo整站优化
  • b2c电子网站建设做外贸网站哪家公司好
  • 响应式网站案例百度竞价登陆
  • 网站建设开发的目的百度收录
  • 南昌百度seo网站推广优化c重庆
  • 188旅游网站源码产品推广软文200字
  • 网站收藏本站的功能长尾关键词
  • 企业做推广可以发哪些网站店铺运营方案策划
  • 南宁网站开发公司最新国内新闻10条
  • 如何把自己电脑做网站服务器吗搜索引擎优化排名关键字广告
  • 提供邢台做wap网站上往建站
  • 无锡 做公司网站最新新闻热点话题
  • 农业科技公司网站建设抖音关键词推广
  • 程序员为什么不敢创业做网站今日全国疫情一览表
  • 网站建设合同付款方式seo优化顾问服务
  • 大连住房和城乡建设部网站秦皇岛seo优化
  • 政府网站建设的措施互联网营销模式有哪些
  • 优秀的定制网站建设制作商公司网址
  • 网站制作公司服务重庆疫情最新情况
  • 镇江网站开发公司福州网站关键词推广
  • 企业网站策划应该怎么做网站建设网络推广平台
  • 建站网络建立科技开发seo外链网
  • 大连seo网站肇庆seo优化
  • 邮件网站怎么做的线上营销策略
  • 保定网站建设设计公司网络运营需要学什么
  • 建设银行企业官方网站百度seo点击排名优化
  • 一了网站百度平台官网