Net设计模式实例之解释器模式(Interpreter Pattern)(2)

四.解释器模式案例分析(Example

1、场景

   罗马字符转换为十进制数字 , 如下图所示
Expression 抽象类 :抽象表达式,声明一个抽象的解释器操作,这个抽象类为抽象语法树中所有的节点所共享。
ThousandExpression :用来核对罗马字符中的 M
HundredExpression :用来核对罗马字符中的 C, CD, D or CM
TenExpression :用来核对罗马字附中的 X, XL, L and XC
OneExpression :用来核对罗马字附中的 I, II, III, IV, V, VI, VI, VII, VIII, IX

2、源码

由于源码字数较多 请参考 http://www.cnblogs.com/ywqu/archive/2010/02/02/1661462.html
3、运行效果

五、总结(Sum ma ry

解释器模式( Interpreter Pattern ),给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。当有一个语言需要解释执行,并且你可将该语言中的句子表示为一个抽象的语法树时,可以考虑使用解释器模式。

你可能感兴趣的:(net,休闲,解释器模式,设计模式实例)