题解 | #重写计算逻辑#
重写计算逻辑
https://www.nowcoder.com/practice/af4fd657b63241a3a0613d5c487a252f
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while (scanner.hasNextInt()) { int x = scanner.nextInt(); int y = scanner.nextInt(); Sub sub = new Sub(x, y); sub.calculate(); } } } class Base { private int x; private int y; public Base(int x, int y) { this.x = x; this.y = y; } public int getX() { return x; } public int getY() { return y; } public void calculate() { System.out.println(getX() * getY()); } } class Sub extends Base { //write your code here...... public Sub(int x,int y){ //创建带参构造方法,因为在Main()方法中,子类的初始化是带参 super(x,y); // 子类初始化之前,一定要先完成父类数据的初始化 }; //重写方法calculate() @Override public void calculate() { if (super.getY() != 0){ System.out.println( super.getX() / super.getY() ); } else{ System.out.println("Error"); } } }