解释器(Interpreter)模式的定义:给分析对象定义一个语言,并定义该语言的文法表示,再设计一个解析器来解释语言中的句子。也就是说,用编译语言的方式来分析应用中的实例。这种模式实现了文法表达式处理的接口,该接口解释一个特定的上下文。
public interface AbstractExpression {
//解释方法
Object interpret(String info);
}
public class Context {
private AbstractExpression exp;
public Context() {
//数据初始化
}
public void operation(String info) {
//调用相关表达式类的解释方法
}
}
public class NonterminalExpression implements AbstractExpression {
private AbstractExpression exp1;
private AbstractExpression exp2;
public Object interpret(String info) {
//非对终结符表达式的处理
return null;
}
}
public class TerminalExpression implements AbstractExpression {
@Override
public Object interpret(String info) {
//对终结符表达式的处理
return null;
}
}