- Client:
public class Client { public static void main(String[] args) { Context context = new Context(); expression terminalexpression = new Terminalexpression(); expression expression = new NonTerminalexpression(terminalexpression); expression.interpret(context); } }
- expression:
public interface expression { void interpret(Context context); }
- Terminalexpression:
public class Terminalexpression implements expression{ @Override public void interpret(Context context) { } }
- NonTerminalexpression:
public class NonTerminalexpression implements expression{ private expression expression = null; public NonTerminalexpression(expression expression) { this.expression = expression; } @Override public void interpret(Context context) { expression.interpret(context); } }
- Context:
public class Context { }三、角色介绍
- Client(客户端):
客户端角色,程序的调用者。 - expression(抽象表达式):
该角色定义了语法树节点的共同接口。 - Terminalexpression(终结符表达式):
该角色定义了终结符表达式。 - NonTerminalexpression(非终结符表达式):
该角色定义了非终结符表达式。 - Context(上下文):
该角色为解释器进行语法解析提供了必要的信息。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)