创建一个模拟一个非常简单的计算器的程序
所以我被要求实现一个代表二进制(有2个参数)算术表达式的抽象类
abstract class ArithmeticExpression {
double binary1;
double binary2;
public abstract void evaluate ();
public abstract void display ();
}
所以我创建了子类加、乘、减和除。在减去我有:
public class subtract extends ArithmeticExpression {
// private double result;
double binary1;
double binary2;
public subtract (double x, double y) {
this.binary1 = x;
this.binary2 = y;
}
public void evaluate () {
System.out.println("Expression: " + getsubX() + " - " + getsubY() + " = ");
// return result;
}
public void display () {
}
public double getsubX() {
}
public double getsubY() {
}
使用这些类,我应该能够表示任意表达式,而无需硬编码。
也有人说评估应该以双精度返回结果,而显示方法应该以字符串形式打印表达式。我在正确的轨道上吗?我在这里想念什么?我不明白它是如何能够代表任何表达的部分?