Java中的解释器interpreter设计模式 - JournalDev

栏目: 后端 · 发布时间: 6年前

内容简介:解释器解释器设计模式的最佳示例是java编译器,它将java源代码解释为

解释器 设计模式 是行为 设计模式 之一。解释器模式用于定义语言的语法表示,并提供解释器来处理该语法。

解释器设计模式的最佳示例是 java 编译器,它将java源代码解释为 JVM 可理解的字节代码。Google Translator也是解释器模式的一个例子,其中输入可以是任何语言,我们可以用另一种语言来解释输出。

实现步骤

1. 要实现解释器模式,我们需要创建将执行解释工作的Interpreter上下文引擎。

2. 然后我们需要创建不同的Expression实现,这些实现将消费使用解释器上下文提供的功能。

3. 最后,我们需要创建一个客户端,该客户端将从用户那里获取输入并决定使用哪个Expression,然后为用户生成输出。

让我们通过一个示例来理解这一点:

用户输入将具有两种形式 - “ 转为二进制”或“ 转为十进制”

我们的解释器客户端在“ 当输入字符串符合转为二进制条件”和“ 当输入字符串符合转为十进制条件” 时,调用解释器的上下文类返回结果给客户端。

第一步是编写将执行实际解释的Interpreter上下文类,然后需要创建将使用这个解释器上下文类的不同类型表达式,这里有两个表达式实现,一个用于将int转换为二进制,另一个用于将int转换为十六进制格式。

最后,创建我们的客户端应用程序,它将具有解析用户输入的逻辑并将其传递给正确的表达式,然后使用输出生成用户响应。

解释器设计模式示例类图

Java中的解释器interpreter设计模式 - JournalDev

重点

  1.  当为语法创建语法树时,可以使用解释器模式。
  2. 解释器设计模式需要大量的错误检查和大量的表达式和代码来评估它们。当语法变得更复杂并因此难以维护,变得复杂。
  3. java.util.Pattern和子类java.text.Format是JDK中使用的解释器模式的一些示例。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

罗辑思维:迷茫时代的明白人

罗辑思维:迷茫时代的明白人

罗振宇 / 北京联合出版公司 / 2015-9 / 42

编辑推荐 1、 罗振宇,自媒体视频脱口秀《罗辑思维》主讲人,互联网知识型社群试水者,资深媒体人和传播专家。曾任CCTV《经济与法》《对话》制片人等。2012年底打造知识型视频脱口秀《罗辑思维》。半年内,由一款互联网自媒体视频产品,逐渐延伸成长为全新的互联网社群品牌。 他对商业和互联网的独到见解,影响了互联网一代的知识结构和对互联网的认识:人类正在从工业化时代进入互联网时代。新的时代将彻......一起来看看 《罗辑思维:迷茫时代的明白人》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

在线进制转换器
在线进制转换器

各进制数互转换器

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具