JAVA求问求问求问

1、 编程实现一个二维平面上点的类Point,并编写测试类测试Point类的功能,绘制Point类的UML类图。
Point类包含下述成员变量和方法:
(1)两个私有的double类型的成员变量x、y,分别表示点的x和y坐标;
(2)一个无参的构造方法;
(3)一个为x、y坐标设置初始值的有参的构造方法;
(4)一个movePoint(int dx, int dy)方法实现点的位置移动,dx,dy分别表示点在坐标x方向和y方向的位移;
(5)一个public String toString()方法返回点的坐标位置信息。

测试类要求:
(1)使用无参的构造方法创建一个Point对象p1;
(2)使用有参构造方法创建一个Point对象p2,从键盘输入点的x、y坐标;
(3)调用movePoint()方法使p2在x方向和y方向都移动2个单位;
(4)参考样例,分别输出两个点的坐标位置。

img

如有帮助,请采纳。点击我回答右上角【采纳】按钮。
效果图:
img

import java.util.Scanner;
public class Point {
    private double x;
    private double y;
    public Point(){
        x=0.0;
        y=0.0;
    }
    public Point(double x, double y) {
        this.x = x;
        this.y = y;
    }
    public void movePoint(int dx,int dy){
        this.x=this.x+dx;
        this.y=this.y+dy;
    }
    @Override
    public String toString(){
        return "("+x+","+y+")";
    }
    public static void main(String[] args) {
        Scanner in=new Scanner(System.in);
        Point p1=new Point();
        Point p2=new Point(in.nextDouble(),in.nextDouble());
        System.out.println("p1的坐标为"+p1);
        System.out.println("p2的坐标为"+p2);
        p2.movePoint(2,2);
        System.out.println("p2移动后的坐标为"+p2);
    }
}