初冀 2023-03-30 20:30 采纳率: 61%
浏览 31
已结题

java子类父类的一些问题


 /*5. 分别编写两个类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,打印出它们之间的距离,
再实例化两个Point3D的对象p3d1,p3d2,打印出他们之间的距离。*/
import java.lang.Math ;
class Point2D{
     int x;
  int y;
        public Point2D(){
            x=0;
            y=0;
        }
    public Point2D(int xx,int yy){
        x=xx;
        y=yy;
    }
    public void offset(int a,int b){
        this.x+=a;
        this.y+=b;
    }
}

      class Point3D extends Point2D{
   
        int x,y,z;
        
        Point3D(int xx, int yy, int zz){
            super(xx,yy);
         z=zz;
        }
        Point3D(Point2D p, int zz){
            this.x=p.x;
            this.y=p.y;
         z=zz;
        }
       void  offset(int a, int b, int c){
       this.x+=a;
       this.y+=b;
       this.z+=c;
       }
        }
  public class Test03{
          public  static void main(String args[]){
      Point2D p2d1=new  Point2D(2,3);
       Point2D p2d2=new  Point2D(5,7);
       System.out.println(Math.sqrt( (p2d2.x-p2d1.x)*(p2d2.x-p2d1.x) + (p2d2.y-p2d1.y)*(p2d2.y-p2d1.y) ));
Point3D p3d1=new Point3D(1,2,3);
Point3D p3d2=new Point3D(new  Point2D(4,6) ,3);
       System.out.println(Math.sqrt(Math.pow((p3d2.x-p3d1.x),2)+Math.pow((p3d2.y-p3d1.y),2)+Math.pow((p3d2.z-p3d1.z),2)));
          }
  } 

img


这个编译没有问题,但是运行的时候就出现这个错误,为什么Point3D里面要写main()函数呢,我在主函数里面写不行吗
然后左边的框里的报错信息是我之前就改过来的不知道为什么编译没有问题,运行就出现这个

  • 写回答

3条回答 默认 最新

  • 快乐鹦鹉 2023-03-30 20:38
    关注

    文件名是啥?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月7日
  • 已采纳回答 3月30日
  • 创建了问题 3月30日

悬赏问题

  • ¥30 求安卓设备利用一个typeC接口,同时实现向pc一边投屏一边上传数据的解决方案。
  • ¥15 SQL Server analysis services 服务安装失败
  • ¥15 用html创建一个个人网页,提供网页页面
  • ¥20 java项目连接SqlServer数据库报错
  • ¥15 基于面向对象的图书馆借阅管理系统
  • ¥15 opencv图像处理,需要四个处理结果图
  • ¥20 centos linux 7.9安装php8.2.18不支持mysqli模块的问题
  • ¥15 stata空间计量LM检验
  • ¥15 关于k8s node节点被释放后如何驱逐节点并添加新节点
  • ¥15 subprocess.CalledProcessError: Command ‘[‘ninja‘, ‘-v‘]‘ returned non-zero exit status 1