首页 > 其他 > 详细

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

时间:2015-10-11 11:20:34      阅读:191      评论:0      收藏:0      [点我收藏+]

 

解释器模式(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);
        }
    }
}

 

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

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

原文:http://www.cnblogs.com/linkarl/p/4868926.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!