定义一个计数器类Counter,包含私有成员int n,重载运算符“+”,实现对象的相加
时间: 2024-09-21 10:03:31 浏览: 36
在定义一个计数器类Counter时,我们可以创建一个简单的类结构,其中包含一个私有整型变量n作为计数值,并通过重载"+"运算符来实现两个Counter对象的相加功能。这里是一个基本的例子:
```java
public class Counter {
private int n;
// 构造函数,初始化计数值
public Counter(int initialValue) {
this.n = initialValue;
}
// 重载 "+" 运算符,用于两个Counter对象相加
public Counter operatorPlus(Counter other) {
if (this.getClass() != other.getClass()) {
throw new IllegalArgumentException("Can only add counters of the same type");
}
Counter sum = new Counter(this.n + other.n);
return sum;
}
// 获取当前计数值
public int getValue() {
return n;
}
// 自增操作
public void increment() {
n++;
}
// 自减操作
public void decrement() {
n--;
}
}
```
在这个例子中,`operatorPlus`方法接受另一个Counter对象,检查它们是否属于相同的类,然后计算并返回新的计数值。你可以像下面这样使用这个类:
```java
public static void main(String[] args) {
Counter counter1 = new Counter(5);
Counter counter2 = new Counter(10);
Counter combined = counter1.operatorPlus(counter2); // 结果是 Counter(n=15)
System.out.println(combined.getValue()); // 输出 15
counter1.increment(); // counter1 现在是 6
System.out.println(counter1.getValue()); // 输出 6
}
```
阅读全文