• 大话设计模式笔记 解释器模式


    解释器模式(interpreter),给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。

    编译原理的内容,定义一种语言,总结其文法,将其翻译成另一种语言(代码)。

    package interpreter;
    
    public abstract class AbstractExpression {
        
        public abstract void interpret(String context);
        
    }
    package interpreter;
    
    public class NonTerminalExpression extends AbstractExpression{
    
        @Override
        public void interpret(String context) {
            System.out.println("NonTerminalExpression "+context);
        }
    
    }
    package interpreter;
    
    import java.util.ArrayList;
    
    //终结符表达式,对终结符的解释操作。
    public class TerminalExpression extends AbstractExpression {
    
        @Override
        public void interpret(String context) {
            //对终结符的解释操作。
            System.out.println("TerminalExpression "+context);
        }
    
        public static void main(String[] args) {
            String context="context";
            
            ArrayList<AbstractExpression> expressions=new ArrayList<AbstractExpression>();
            
            expressions.add(new TerminalExpression());
            expressions.add(new NonTerminalExpression());
            expressions.add(new TerminalExpression());
            expressions.add(new TerminalExpression());
            
            for (AbstractExpression abstractExpression : expressions) {
                abstractExpression.interpret(context);
            }
        }
    }

    复杂的文法,应该使用语法分析程序。

  • 相关阅读:
    魔理沙的烟火制造
    【数位DP】恨7不成妻
    Happy Equation
    实验4
    Max answer(The Preliminary Contest for ICPC China Nanchang National Invitational)
    Next K Permutation
    Hubtown(最大流)
    Compass Card Sales(模拟)
    Ghostbusters(并查集,最小生成树)
    游览器兼容性笔记
  • 原文地址:https://www.cnblogs.com/linkarl/p/4868926.html
Copyright © 2020-2023  润新知