一、概念
解释器模式,给定一个语句,定义它的一种表示,并定义一个解释器,这个解释器使用该表示来解释语句。比如正则表达式。
二、代码示例
public abstract class Expression {
public abstract void explain(Context context);
}
public class MyExpression extends Expression {
@Override
public void explain(Context context) {
System.out.println(“我的解释器”);
}
}
public class YouExpression extends Expression {
@Override
public void explain(Context context) {
System.out.println(“你的解释器”);
}
}
public class Context {
private String input;
public String getInput() {
return input;
}
public void setInput(String input) {
this.input = input;
}
}
public class RunMain {
public static void main(String[] args) {
Context context = new Context();
List expressions = new ArrayList<>();
expressions.add(new MyExpression());
expressions.add(new YouExpression());
for (Expression expression : expressions) {
expression.explain(context);
}
}
}