当前位置: 首页 > news >正文

企业官网网站模板下载郑州本地网站

企业官网网站模板下载,郑州本地网站,wordpress 调用文章 分页,微信怎么做一个小程序定义 解释器模式是一种行为设计模式#xff0c;用于定义一种语言的文法#xff0c;并提供一个解释器来处理该语言的句子。它通过为每个语法规则定义一个类#xff0c;使得可以将复杂的表达式逐步解析和求值。这种模式适用于需要解析和执行语法规则的场景。 UML图 组成角色…定义 解释器模式是一种行为设计模式用于定义一种语言的文法并提供一个解释器来处理该语言的句子。它通过为每个语法规则定义一个类使得可以将复杂的表达式逐步解析和求值。这种模式适用于需要解析和执行语法规则的场景。 UML图 组成角色 AbstractExpression抽象表达式声明一个解释操作的接口所有具体表达式都需要实现这个接口。TerminalExpression终结符表达式实现了抽象表达式接口代表文法中的基本元素通常用于处理终结符。NonTerminalExpression非终结符表达式也实现了抽象表达式接口通常用于处理文法中的组合结构调用一个或多个终结符表达式。Context上下文存储在解释过程中需要的全局信息通常包含解释器所需的数据。 工作流程 客户端创建上下文对象并定义一个具体的表达式树。通过上下文将输入的句子传递给解释器解释器会解析该句子。解析过程通过调用表达式对象的解释方法逐步解析并返回结果。 代码 import java.util.HashMap; import java.util.Map;// AbstractExpression interface Expression {int interpret(MapString, Integer context); }// TerminalExpression class Number implements Expression {private final int number;public Number(int number) {this.number number;}Overridepublic int interpret(MapString, Integer context) {return number;} }// NonTerminalExpression class Add implements Expression {private final Expression left;private final Expression right;public Add(Expression left, Expression right) {this.left left;this.right right;}Overridepublic int interpret(MapString, Integer context) {return left.interpret(context) right.interpret(context);} }class Subtract implements Expression {private final Expression left;private final Expression right;public Subtract(Expression left, Expression right) {this.left left;this.right right;}Overridepublic int interpret(MapString, Integer context) {return left.interpret(context) - right.interpret(context);} }// Client code public class InterpreterPatternDemo {public static void main(String[] args) {// 1 2 - 3Expression expression new Subtract(new Add(new Number(1), new Number(2)), new Number(3));// 计算MapString, Integer context new HashMap();int result expression.interpret(context);System.out.println(Result: result); // Output: Result: 0} } 优点 易于扩展可以通过增加新的终结符和非终结符类来扩展语言。清晰的结构每个表达式都有对应的类使得文法和解析逻辑清晰分离。 缺点 类的数量增多对于复杂文法可能会导致类的数量激增管理困难。性能问题对于复杂的解析过程可能会导致性能下降因为每次解释都需要创建新的对象。 使用场景 当需要定义一种语言的文法并需要解释它时例如简单编程语言、正则表达式的解释等。当文法规则相对简单且可扩展时适合使用解释器模式。
http://www.hkea.cn/news/14325114/

相关文章:

  • 天津企业模板建站网页游戏网站网址
  • 网站关键词多少个字数 站长网中山搜索引擎优化
  • 素材网站源码百度竞价推广有哪些优势
  • 做产地证网站慈利做网站在哪里
  • 企业手机网站建设有百度seo关键词排名s
  • 网站的详情页面设计做网站大优惠
  • 宿州市住房 建设 官方网站优化网站图片
  • 网站做301有什么用用模板做的网站权重高吗
  • 正规营销型网站定制中国交通建设集团第四工程局网站
  • python3.5 做网站做网站多少钱西宁君博专注
  • 鹰潭网站制作莱芜最新新闻
  • 苏州公司建设网站网站备案 网站名称
  • 网站后台数据应该怎么做有服务器有域名如何做网站
  • 建立网站的用处怎么做网页 网站制作
  • 建设网站的好处和优点中国机械工业网
  • 个人网站能做淘宝客吗哪里有营销型网站最新报价
  • 湛江网站建设产品优化深圳网站备案拍照
  • 前几年做那些网站致富被墙域名黑别人网站
  • 天津网站建设技术支持互联网做网站排明
  • 官方网站建设的四个步骤正规网站建设公司在哪里
  • 江门搜索引擎网站推广网站广告代码检测
  • 没有服务器 怎么做网站做食品外贸选哪个网站好
  • 北京网站建设销售招聘wordpress文章分集
  • 全包胶衣网站新品发布会视频
  • 建设门户网站的目的和需求连接品硕网线做怎么弹网站
  • 公众号模板网站标题优化seo
  • 网站设计示例百度官方网站登录
  • 邯郸市搞网站服务务的吗关于门户网站建设的整改报告
  • 上海松江网站制作python做网站好吗
  • 如何更换网站域名企业邮箱登录方法