设计模式行为型:解释器模式

电子说

1.3w人已加入

描述

定义一个语言的文法,并创建一个解释器去解释该语言中的句子,这里的“语言”是指使用规定格式和语法的代码。

结构图

处理器

角色与理解

定义一个语言的文法,并创建一个解释器去解释该语言中的句子,这里的“语言”是指使用规定格式和语法的代码。

解释器模式共分为三种角色:

  • AbstractExpression(抽象表达式):终结符表达式与非终结符表达式的共同父类,声明了抽象的解释行为。
  • TerminalException(终结符表达式):抽象表达式的子类,包含文法中终结符的解释操作。
  • NonterminalException(非终结符表达式):抽象表达式的子类,实现了文法中非终结符的解释操作,内部包含非终结符表达式或者终结符表达式。
  • Context(环境类):上下文环境

终结符表达式是“一句话”中包含的所有最终解释单元,非终结符表达式将一组终结符表达式连接,完成“一句话”的解释,非终结符表达式将“几句话”连接,完成一段话的解释。

核心代码

  • 抽象表达式

处理器

  • 具体处理者

处理器

  • 非中介表达式

处理器

  • 处理类

处理器

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分