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

网站建设费摊销国外企业网站设计欣赏

网站建设费摊销,国外企业网站设计欣赏,佛山专业网站开发公司,青州网站建设解释器模式#xff08;Interpreter Pattern#xff09;是一种行为设计模式#xff0c;它用于定义一种语言的语法结构和解释器#xff0c;使得可以解释并执行特定的语法规则。该模式可以将复杂的语言表达式分解为更小的语法单元#xff0c;并定义其解释过程。 解释器模式的…解释器模式Interpreter Pattern是一种行为设计模式它用于定义一种语言的语法结构和解释器使得可以解释并执行特定的语法规则。该模式可以将复杂的语言表达式分解为更小的语法单元并定义其解释过程。 解释器模式的核心组成部分包括 抽象表达式Abstract Expression定义了解释器的接口其中包含一个interpret()方法负责解释语言表达式。 终结符表达式Terminal Expression实现了抽象表达式的接口用于表示语言中的终结符即不需要进一步解释的语法单位。 非终结符表达式Nonterminal Expression实现了抽象表达式的接口用于表示语言中的非终结符即需要进一步解释的语法单位。 上下文Context包含需要解释的语言表达式以及保存解释器所需的上下文信息。 客户端Client创建并配置解释器将需要解释的语言表达式传递给解释器进行解释执行。 使用解释器模式的优点包括 易于扩展语言解释能力通过添加新的终结符和非终结符表达式可以扩展语言的语法规则和解释能力。灵活的语言处理可以将复杂的语法规则分解为简单的解释器组件灵活地组合进行语言处理。可维护性和可读性通过对语言表达式的分解和解释过程的抽象可以提高代码的可维护性和可读性。 /*** 抽象表达式Abstract Expression角色定义解释器的接口约定解释器的解释操作主要包含解释方法 interpret()。*/ public interface Expression {/*** 解析context内容是否满足要求* param context* return*/public boolean interpret(String context); }/*** 多个表达式的与关系* 非终结符*/ public class AndExpression implements Expression {private Expression expr1 null;private Expression expr2 null;public AndExpression(Expression expr1, Expression expr2) { this.expr1 expr1;this.expr2 expr2;}Overridepublic boolean interpret(String context) { return expr1.interpret(context) expr2.interpret(context);} }public class InterpreterPatternDemo {//规则Robert 和 John 是男性public static Expression getMaleExpression(){Expression robert new TerminalExpression(Robert);Expression john new TerminalExpression(John);return new OrExpression(robert, john); }//规则Julie 是一个已婚的女性public static Expression getMarriedWomanExpression(){Expression julie new TerminalExpression(Julie);Expression married new TerminalExpression(Married);return new AndExpression(julie, married); }public static void main(String[] args) {Expression isMale getMaleExpression();Expression isMarriedWoman getMarriedWomanExpression();System.out.println(John is male? isMale.interpret(John and mike is a friend));System.out.println(Julie is a married women? isMarriedWoman.interpret(Married Julie));} }/*** 多个表达式的或关系*/ public class OrExpression implements Expression {private Expression expr1 null;private Expression expr2 null;public OrExpression(Expression expr1, Expression expr2) { this.expr1 expr1;this.expr2 expr2;}Overridepublic boolean interpret(String context) { return expr1.interpret(context) || expr2.interpret(context);} }/*** 终结符*/ public class TerminalExpression implements Expression {//表达式的要求:private String data;public TerminalExpression(String data){this.data data; }/*** 判断 文本context是否满足 data的要求.* param context* return*/Overridepublic boolean interpret(String context) {if(context.contains(data)){return true;}return false;} }然而解释器模式也有一些限制和适用场景 对于复杂的语法规则可能需要大量的解释器组件和规则的定义增加了代码的复杂性。可能对性能造成影响由于解释过程需要进行递归调用可能对性能产生影响。 学历不行也罢技不如人也罢只要你保持一颗上进的心往某一个方面钻研时间久了你会发现自己不知不觉在成长这一路上的经历都是你最宝贵的财富最重要的是你需要不断进取不要荒废时光学无止境但是你可以钻研某一方面技不在多在于精。 20230801 BY 罗小黑
http://www.w-s-a.com/news/764636/

相关文章:

  • 如何减少网站建设中的错误温州网站公司哪家好
  • 宜章网站建设北京定制公交网站
  • 怎么让谷歌收录我的网站郑州网站建设更好
  • 在线视频网站开发方案phpaspnet网站开发实例视频
  • 正常做一个网站多少钱网站开发所遵循
  • 西部数码网站备份领英创建公司主页
  • 中山网站建设文化平台成都电商app开发
  • 无锡网站推广公司排名中国十大网站建设
  • 网站建设报价怎么差别那么大深圳开发公司网站建设
  • 京东商城网站建设方案书建设网站平台
  • 如何查询网站建设时间赤峰建网站的电话
  • 域名购买网站有哪些公司企业邮箱管理制度
  • 阿里云服务起做网站抖音seo推荐算法
  • 免费建站工具机械网站建设公司推荐
  • 怎么用自己主机做网站_如何做简单的网站
  • 阿里巴巴国际站跨境电商平台为什么有点网站打不开
  • 甘肃做网站哪家好网站开发 都包含什么语言
  • 合肥哪里有做网站的广告型网站怎么做的
  • 用dede做的网站国外免费空间哪个好
  • dede个人网站模板企点
  • 韩雪个人网站wordpress 怎么添加网站备案信息
  • 个人网站可以做地方技能培训班
  • 品牌营销策略研究无锡 网站 seo 优化
  • 在线推广网站的方法有哪些织梦网站首页目录在哪
  • 做爰全过程免费网站的视频做网站的几个步骤
  • cpa建站教程青海西宁制作网站企业
  • 简易的在线数据库网站模板网站多服务器建设
  • 成都seo网站建设花店网页模板html
  • 义乌市网站制作网络营销策略名词解释
  • 高端品牌网站建设图片wordpress 资源站主题