状态模式(think in java中的设计模式)
Posted 酒皇
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了状态模式(think in java中的设计模式)相关的知识,希望对你有一定的参考价值。
状态模式:在一个对象内含有一个父类对象或者一个接口的引用。该引用指向一个子类对象,通过内部的方法改变子类对象的类别,从而改变同一个引用调用同样的方法达到不同的效果。
public class A { private B b=new B(); void buildC(){b=new C();} void buildD(){b=new D();} void buildE(){b=new E();} public static void main(String[] args){ A a=new A(); a.b.say(); a.buildC(); a.b.say(); a.buildD(); a.b.say(); a.buildE(); a.b.say(); } //结果如下: //sya:B //sya:C //sya:D //sya:E } class B{ public void say(){ System.out.println("sya:B"); } } class C extends B { public void say(){ System.out.println("sya:C"); } } class D extends B { public void say(){ System.out.println("sya:D"); } } class E extends B { public void say(){ System.out.println("sya:E"); } }
以上是关于状态模式(think in java中的设计模式)的主要内容,如果未能解决你的问题,请参考以下文章