设计一个名为MyPoint的不可变类,它代表一个坐标为x,y的点(x和y不能为负数)。类包含: 私有成员变量x和y代表坐标,类型为double。 一个不带参数的构造方法MyPoint(),x和y都设为0.0。 一个有参构造方法MyPoint(double x,double y),构造一个指定的坐标点,如果x和y小于0,则设为0。 为x和y添加getter方法,都为公共方法。 public MyPoint move(double dx, double dy)方法, 生成一个横坐标移动dx,纵坐标移动dy后的
时间: 2023-06-06 10:05:05 浏览: 99
新点,并返回该新点,但原始点不变。
以下是设计的代码:
```java
public final class MyPoint {
private final double x;
private final double y;
public MyPoint() {
this.x = 0.0;
this.y = 0.0;
}
public MyPoint(double x, double y) {
if (x < 0) {
this.x = 0.0;
} else {
this.x = x;
}
if (y < 0) {
this.y = 0.0;
} else {
this.y = y;
}
}
public double getX() {
return this.x;
}
public double getY() {
return this.y;
}
public MyPoint move(double dx, double dy) {
return new MyPoint(this.x + dx, this.y + dy);
}
}
```
希望这个代码可以满足您的需求!
阅读全文