Step 1: Create an interpreter interface (in which an auxiliary parameter is passed in, so we first create an auxiliary class Context, which is optional)
public class Context { private int num1;; private int num2; public int getNum1() { return num1; } public void setNum1(int num1) { this.num1 = num1; } public int getNum2() { return num2; } public void setNum2(int num2) { this.num2 = num2; } public Context(int num1, int num2) { super(); this.num1 = num1; this.num2 = num2; } }
public interface Expression { public int interpret(Context context); }
Step 2: Create the concrete implementation class of the interpreter
public class Minus implements Expression{ public int interpret(Context context) { return context.getNum1()-context.getNum2(); } }
Step 3: Test
public class Test { public static void main(String[] args) { int result= new Minus().interpret(new Context(5, 5)); System.out.println("5-5="+result); } }