设计一个MyPoint类,代表一个以x坐标和y坐标的点。该类包括:
一个创建(0,0)的无参构造方法。
以指定坐标构建点的构造方法。
一个名为distance的方法,返回该点到MyPoint类型的指定点之间的距离。
一个名为distance的方法,返回该点到指定x和y坐标的距离。
一个名为distance的静态方法,返回两个MyPoint对象之间的距离。
函数接口定义:
请仔细阅读测试方法。
裁判测试程序样例:
测试方法如下所示:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
double x = input.nextDouble();
double y = input.nextDouble();
double x1 = input.nextDouble();
double y1 = input.nextDouble();
MyPoint P1 = new MyPoint();
MyPoint P2 = new MyPoint(x,y);
MyPoint P3 = new MyPoint(x1,y1);
System.out.printf("%.4f", P1.distance(P2));
System.out.print("\n");
System.out.printf("%.4f", MyPoint.distance(P2,P3));
}
}
/* 请在这里填写答案 */
输入样例:
在这里给出一组输入。例如:
10 30.5 14 15
输出样例:
在这里给出相应的输出。例如:
32.0975
16.0078
class MyPoint{
double a;
double b;
MyPoint()
{
a=0;
b=0;
}
MyPoint(double a ,double b)
{
this.a=a;
this.b=b;
}
public double distance(MyPoint g)
{
return Math.sqrt((this.a-g.a)*(this.a-g.a)+(this.b-g.b)*(this.b-g.b));
}
public double distance(double x,double y)
{
return Math.sqrt((this.a-x)*(this.a-x)+(this.b-y)*(this.b-y));
}
public static double distance(MyPoint a,MyPoint b)
{
return Math.sqrt((a.a-b.a)*(a.a-b.a)+(a.b-b.b)*(a.b-b.b));
}
}