首页 > 代码库 > 设计模式之解释器模式
设计模式之解释器模式
定义:给定一个语言,定义它的方法的一种表示,并定义一个解释器,这个解释器使用该表示解释语言中的句子
结构图:
示例代码:
public abstract class AbstractExpression { public abstract void interpret(Context context); } public class NonterminalExpression extends AbstractExpression { @Override public void interpret(Context context) { // TODO Auto-generated method stub System.out.println("非终端解释器"); } } public class TerminalExpression extends AbstractExpression { @Override public void interpret(Context context) { // TODO Auto-generated method stub System.out.println("终端解释器"); } } public class Context { private String input; private String ouput; public String getInput() { return input; } public void setInput(String input) { this.input = input; } public String getOuput() { return ouput; } public void setOuput(String ouput) { this.ouput = ouput; } }客户端代码:
public class Client { public static void main(String[] args) { Context context = new Context(); List<AbstractExpression> list = new ArrayList<AbstractExpression>(); list.add(new TerminalExpression()); list.add(new NonterminalExpression()); list.add(new TerminalExpression()); list.add(new TerminalExpression()); for (AbstractExpression exp : list) { exp.interpret(context); } } }
输出结果:
终端解释器
非终端解释器
终端解释器
终端解释器
设计模式之解释器模式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。