定义一个二维空间的点类, 有横、纵坐标信息, 有计算两点之间距离的方法, 有将当前点的横、纵坐标移动一定距离到下一个位置的方法。 定义一个测试类测试定义的这两个方法。给我简单代码
时间: 2024-10-24 10:04:52 浏览: 47
二维坐标点按行排序C#VS2008工程源代码
首先,我们定义一个名为`Point`的类,它包含两个私有成员变量表示横坐标和纵坐标,并提供公共方法来获取和设置坐标,以及计算两点之间的距离。接着,我们将创建一个名为`MoveTest`的测试类来测试这两个功能。
```java
// Point 类
public class Point {
private double x;
private double y;
// 构造函数
public Point(double x, double y) {
this.x = x;
this.y = y;
}
// 获取和设置坐标
public double getX() { return x; }
public void setX(double newX) { x = newX; }
public double getY() { return y; }
public void setY(double newY) { y = newY; }
// 计算两点间距离
public double distanceTo(Point other) {
double deltaX = other.getX() - x;
double deltaY = other.getY() - y;
return Math.sqrt(deltaX * deltaX + deltaY * deltaY);
}
// 移动点到新的位置
public void moveTo(double newX, double newY) {
setX(newX);
setY(newY);
}
}
// MoveTest 测试类
import org.junit.jupiter.api.Test;
public class MoveTest {
@Test
public void testDistanceAndMovement() {
// 创建两个点
Point p1 = new Point(0, 0);
Point p2 = new Point(3, 4);
// 测试距离计算
System.out.println("Distance between points: " + p1.distanceTo(p2));
// 移动点p1
p1.moveTo(5, 6);
// 再次测试距离
System.out.println("New distance after moving: " + p1.distanceTo(p2));
}
}
```
在这个例子中,`MoveTest`类中的`testDistanceAndMovement`方法会先创建两个点`p1`和`p2`,然后计算它们之间的初始距离,接着移动`p1`的位置并再次检查新的距离。这演示了如何使用`Point`类中的方法。
阅读全文