东方博客Plus!
loading ...
评论列表 日志列表 访客列表 留言列表
loading...

2008-06-15 | OO(一)     朗读全文

OO学习之旅开始了

先举个例子,关于鸭子的

如何设计鸭子,我想应该分为鸭子类和鸭子行为类

鸭子行为类:

//飞行接口

public interface FlyBehavior{

public void fly();

}

FlyNoWay,FlyCanWay类继承此接口,分别表示是否会飞

//游泳接口

public interface SwimBehavior{

public void swim();

}

SwimNoWay,SwimCanWay类继承此接口,分别表示是否会游泳

鸭子类:

public abstract class Duck

{

FlyBehavior flyBehavior;

SwimBehavior swimBehavior;

public void PerformFly(){

flyBehavior.fly();

}

public void PerformSwim(){

swimBehavior.swim();

}

}

那么具体的鸭子类就是继承鸭子基类,然后实现行为的子类

这样要生成一个具体的鸭子就是先继承鸭子的基类,然后实现行为类里的方法,如

    class DuckFirst:Duck
    {
        public DuckFirst()
        {
            flyBehavior = new FlyNoWay();
            swimBehavior = new SwimNoWay();
        }
    }

接下来就是实现生产第一个鸭子的时候了

Duck() duckFirst=new DuckFirst();

 duckFirst.PerformFly();

duckFirst.PerFormSwim();

评论 (2) |  阅读 (?)  |  固定链接 |  发表于 21:17  | 最后修改于 2008-06-18 14:45

评论

正在读取评论信息...
您还未登录,只能匿名发表评论。或者您可以 登录 后发表。
*