策略模式界说了多个算法,这些算法在具体利用时可以交换,若何在Flash中实现策略模式呢?笔者与大师分享一下本身的经验。
在接口模式中,用一个类来界说一个算法,在模式中形当作多个算法,并且这些算法在利用时可以交换。
以下是实现策略模式的类图。
起首,界说一个IRecord接口,规范方式write的书写格局。
接着,担当IRecord接口,界说一个Nation类,在类中输出国籍名。
然后,界说一个类Sname,担当IRecord接口,在类中输出记实的姓名。
界说一个类RecordStrategy,可以或许按照选择,输出国籍名或姓名。
新建一个Flash文档,具体利用策略模式。
文档中先界说一个变量record,类型为RecordStrategy。
建立一个RecordStrategy类型的实例,具体引用的实例为Nation类的实例。
然后,挪用实例record的write方式,因为引用的是Nation类的实例,所以输出的是国籍。
运行法式,在输出窗口输出英国国籍。
最后,建立一个RecordStrategy类型实例,具体引用的为Sname实例,并挪用实例record的write方式。
因为这一次引用的是Sname实例,所以输出的是姓名。
运行法式,在输出窗口中输出记实中界说的姓名。
此刻应该知道策略模式了吧,它其实就是多个算法类,这些算法类又可以按照本身需要来挪用。
0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!