用java怎样编写一个二维坐标平移程序

求解,按如下面要求编写个java程序啊????快快快啊.分别编写两个类Point2D,Point3D来表示二维空间和三维空间的点,使之满足下列要求:(1)Point2D有... 求解,按如下面要求编写个java程序啊????快快快啊

.分别编写两个类Point2D,Point3D来表示二维空间和三维空间的点,使之满足下列要求:
(1) Point2D有两个整型成员变量x, y (分别为二维空间的X,Y方向坐标),Point2D的构造方法要实现对其成员变量x, y的初始化。
(2)Point2D有一个void型成员方法offset(int a, int b),它可以实现Point2D的平移。
(3)Point3D是Point2D的直接子类,它有有三个整型成员变量x,y,z (分别为三维空间的X,Y,Z方向坐标),Point3D有两个构造方法:Point3D(int x,int y,int z)和Point3D(Point2D p,int z),两者均可实现对Point3D的成员变量x, y,z的初始化。
(4)Point3D有一个void型成员方法offset(int a, int b,int c),该方法可以实现Point3D的平移。
(5)在Point3D中的主函数main()中实例化两个Point2D的对象p2d1,p2d2,打印出它们之间的距离,再实例化两个Point2D的对象p3d1,p3d2,打印出他们之间的距离。
展开
 我来答
小傻

推荐于2016-05-28 · 知道合伙人软件行家
小傻
知道合伙人软件行家
采纳数:11567 获赞数:31134
已经做过两个上架的app和两个网页项目.

向TA提问 私信TA
展开全部

java编写二维坐标平移程序,主要是通过类继承Point2D,使用里面的方法来平移,如下代码:

class  Point2D
{   
int x, y;
       Point2D(){  }
       Point2D(int i,int j)
       {
              x=i;
              y=j;
       }
       void offset(int a, int b)
       {
              x=x+a;
              y=y+b;
       }
       void distance(Point2D a,Point2D b) 
       {
              float m;
              m=(float)Math.sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y));
              System.out.print("二维空间两点之间的距离:");
              System.out.println("m="+m);
       }
}

public class Point3D extends Point2D
{
       int x,y,z;
       Point3D(int x,int y,int z)
       {
              this.x=x;
              this.y=y;
              this.z=z;
       }
       Point3D(Point2D p,int z)
       {
              x=p.x;
              y=p.y;
              this.z=z;
       }
       void offset(int a, int b,int c)
       {
              x=x+a;
              b=x+b;
              c=x+c;
       } 
void distance(Point3D a,Point3D b) 
       {
       float n;
       n=(float)Math.sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y)+(a.y-b.y)*(a.y-b.y));//计算两点之间的距离。
              System.out.print("三维空间两点之间的距离:");
              System.out.println("n="+n);
       }
public static void main(String[] args) 
        {
        Point2D p2d1=new Point2D(2,3);
        Point2D p2d2=new Point2D(3,6);

        Point3D p2d3=new Point3D(1,2,3);
        Point3D p2d4=new Point3D(p2d1,3);

        p2d1.distance(p2d1,p2d2);
        p2d3.distance(p2d3,p2d4);//平移一段距离。
        }
}
前熙熙0Hj
推荐于2018-02-11 · TA获得超过448个赞
知道小有建树答主
回答量:203
采纳率:100%
帮助的人:110万
展开全部
网上很多这样的。

class Point2D
{
int x, y;
Point2D(){ }
Point2D(int i,int j)
{
x=i;
y=j;
}
void offset(int a, int b)
{
x=x+a;
y=y+b;
}
void distance(Point2D a,Point2D b)
{
float m;
m=(float)Math.sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y));
System.out.print("二维空间两点之间的距离:");
System.out.println("m="+m);
}
}

public class Point3D extends Point2D
{
int x,y,z;
Point3D(int x,int y,int z)
{
this.x=x;
this.y=y;
this.z=z;
}
Point3D(Point2D p,int z)
{
x=p.x;
y=p.y;
this.z=z;
}
void offset(int a, int b,int c)
{
x=x+a;
b=x+b;
c=x+c;
}
void distance(Point3D a,Point3D b)
{
float n;
n=(float)Math.sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y)+(a.y-b.y)*(a.y-b.y));
System.out.print("三维空间两点之间的距离:");
System.out.println("n="+n);
}
public static void main(String[] args)
{
Point2D p2d1=new Point2D(2,3);
Point2D p2d2=new Point2D(3,6);

Point3D p2d3=new Point3D(1,2,3);
Point3D p2d4=new Point3D(p2d1,3);

p2d1.distance(p2d1,p2d2);
p2d3.distance(p2d3,p2d4);
}
}
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式