Design Pattern-interpreter Pattern
Definition: defines a language, a representation of its method, and an interpreter. This interpreter uses this interpreter to represent sentences in the language of interpretation.
Structure:
<喎?http: www.bkjia.com kf ware vc " target="_blank" class="keylink"> VcD4KPHA + yr7A/bt6wuujuw.vcd4kphbyzsbjbgfzcz0 = "brush: java;"> public abstract class implements actexpression {public abstract void interpret (Context context );} public class NonterminalExpression extends actexpression {@ Overridepublic void interpret (Context context) {// TODO Auto-generated method stubSystem. out. println ("non-terminal interpreter");} public class TerminalExpression extends actexpression {@ Overridepublic void interpret (Context context) {// TODO Auto-generated method stubSystem. out. println ("terminal interpreter") ;}} 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 ;}}Client code:
public class Client {public static void main(String[] args) {Context context = new Context();List list = new ArrayList();list.add(new TerminalExpression());list.add(new NonterminalExpression());list.add(new TerminalExpression());list.add(new TerminalExpression());for (AbstractExpression exp : list) {exp.interpret(context);}}}
Output result:
Terminal Interpreter
Non-terminal Interpreter
Terminal Interpreter
Terminal Interpreter