官术网_书友最值得收藏!

InterpreterDriver class

The InterpreterDriver class is the class that drives the application and therefore contains the main() method. There are two class variables, originatingContent and theExpression; both are initially set to null.

In addition to the constructor method, there is also an interpret() method that does the following:

  1. Uses the Scanner class
  2. Instantiates a new Expression instance
  3. Calls the interpret() method on the new Expression instance

The InterpreterDriver class is provided next:

import java.util.Scanner;

public class InterpreterDriver {

// class variables
public Conversion originatingContent = null;
public Expression theExpression = null;

public InterpreterDriver(Conversion content) {
originatingContent = content;
}

public void interpret(String tString) {

Scanner in = new Scanner(System.in);
theExpression = new MapIntToCharacters(tString);
theExpression.interpret(originatingContent);
}


Execution of the InterpreterDriver main() method starts by printing the output header, CODE INTERPRETER, and prompts users for their input. Next, the Scanner class is used to obtain user input via their keyboard. That input is used to create a new Conversion instance. That instance is used to instantiate a new InterpreterDriver object. Finally, the interpret() method is called on that InterpreterDriver object:

    public static void main(String[] args) {
System.out.println("\n\nCODE INTERPRETER\n");
System.out.print("Enter your code: ");
Scanner in = new Scanner(System.in);
String userInput = in.nextLine();
System.out.println("Your code: " + userInput);
Conversion conversion = new Conversion(userInput);
InterpreterDriver userCode = new InterpreterDriver(conversion);
userCode.interpret(userInput);
System.out.println("\n\n");
}
}

The program's output is provided here:

Code Interpreter program console output

This section featured the source code, demonstrating the interpreter design pattern.

主站蜘蛛池模板: 西安市| 莲花县| 石景山区| 石台县| 舟曲县| 龙川县| 广宗县| 民权县| 瓮安县| 杨浦区| 中牟县| 昭通市| 新闻| 花垣县| 古丈县| 台东市| 河间市| 上栗县| 桃源县| 河源市| 夹江县| 洱源县| 乌什县| 新巴尔虎左旗| 柳江县| 马龙县| 平罗县| 定日县| 清水河县| 宁陕县| 西畴县| 铜鼓县| 乡宁县| 酒泉市| 佛冈县| 南皮县| 宣恩县| 新巴尔虎左旗| 磴口县| 城固县| 安化县|