首页 > 代码库 > 状态模式(think in java中的设计模式)
状态模式(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中的设计模式)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。