java使用面向对象的思想编写一个计算机类,可以实现两个整数的加减乘除,再测试类中创建计算机类的对象并做测试
时间: 2024-12-22 10:12:51 浏览: 8
在Java中,我们可以创建一个名为`Computer`的类,它采用面向对象的方法来表示一台具备基本算术运算功能的计算机。首先,我们定义一个包含加、减、乘、除方法的类:
```java
public class Computer {
// 定义私有变量,模拟计算机内部的数据存储
private int memory;
// 构造函数,初始化内存
public Computer(int initialMemory) {
this.memory = initialMemory;
}
// 方法实现加法操作
public void add(int num) {
memory += num;
}
// 方法实现减法操作
public void subtract(int num) {
if (num >= 0) {
memory -= num;
} else {
throw new IllegalArgumentException("Subtraction cannot be negative.");
}
}
// 方法实现乘法操作
public void multiply(int num) {
memory *= num;
}
// 方法实现除法操作,这里假设除数非零
public void divide(int divisor) {
if (divisor != 0) {
memory /= divisor;
} else {
throw new ArithmeticException("Division by zero is not allowed.");
}
}
// 获取当前内存值的方法
public int getMemory() {
return memory;
}
}
```
接下来,在`TestComputer`类中,我们可以创建`Computer`对象并进行测试:
```java
public class TestComputer {
public static void main(String[] args) {
// 创建一个初始内存为10的计算机实例
Computer computer = new Computer(10);
// 测试加法、减法、乘法和除法
computer.add(5); // 计算机内存变为15
System.out.println("After addition: " + computer.getMemory());
computer.subtract(3); // 计算机内存变为12
System.out.println("After subtraction: " + computer.getMemory());
computer.multiply(2); // 计算机内存变为24
System.out.println("After multiplication: " + computer.getMemory());
try {
computer.divide(2); // 计算机内存变为12
System.out.println("After division: " + computer.getMemory());
} catch (ArithmeticException e) {
System.out.println("An error occurred: " + e.getMessage());
}
}
}
```
当你运行`TestComputer`的`main`方法时,会看到每个操作后的内存值。注意,为了保持简洁,这里没有处理所有可能的异常情况。
阅读全文