读书人

Java设计形式之State(状态模式)

发布时间: 2012-10-09 10:21:45 作者: rapoo

Java设计模式之State(状态模式)

定义:?GOF《设计模式》中给状态模式下的定义为:允许一个对象在其内部状态改变时改变它的行为。

?

先看一个例子:

?

????}??
  • }??

    ?

    ?

    输出结果:

    frog!
    prince!

    ?

    上述例子就是state模式的基本思想,希望读者朋友们认真体会。

    ?

    这里再举个state模式的例子:

    玩过cs的人都知道,cs里面有很多枪,ak47啊,m16啊,但是不管什么枪,你拿起以后,都只用扣动扳机就能够把子弹打出去。这就和我们state模式思想是一样的,不管底层怎么实现(比如上述例子中的判断是frog还是prince,然后执行不同的操作),外层的接口都不变(greet方法)。

  • 读书人网 >软件开发

    热点推荐