哇咔咔...{} 2021-10-20 09:15 采纳率: 88.9%
浏览 39
已结题

这个java重载方法为什么用不了?

不知道为什么我写的这个重载方法用不了,求解惑
代码和报错原因如下:

package com.wkcto;
import java.lang.Math;
class Point2D{
    int x,y;
  //构造方法
    public Point2D(int x,int y){
        this.x=x;
        this.y=y;
    }
    public Point2D(){};
}
class Point3D extends Point2D{
    int z;
    public Point3D(int x,int y,int z){
        super(x,y);
        this.z=z;
    }
//构造方法
    public Point3D(Point2D p,int z){
        x=p.x;
        y=p.y;
        this.z=z;
    }
    
}
public class experiment7_2 {
    public static void main(String[] args) {
        Point2D p2d1=new Point2D(3,4);
        Point2D p2d2=new Point2D(5,5);
        System.out.println("平面两点的距离为:"+  Sqrt(p2d1,p2d2));
        Point3D p3d1=new Point3D(3,4,5);
        Point3D p3d2=new Point3D(p2d2,5);
        Sqrt(p3d1,p3d2);
    }

    double Sqrt(Point2D a,Point2D b){
        int x1=a.x-b.x;
        int y1=a.y-b.y;
        double n=x1*x1+y1*y1;
        return Math.sqrt(n);
    }
    double Sqrt(Point3D a,Point3D b) {
        int x1 = a.x - b.x;
        int y1 = a.y - b.y;
        int z1 = a.z - b.z;
        double n = x1 * x1 + y1 * y1 + z1 * z1;
        return Math.sqrt(n);
    }
}


img

  • 写回答

4条回答 默认 最新

  • BCS-点心 2021-10-20 09:19
    关注

    1.静态方法中只能直接使用静态资源
    2.除静态方法外,其他方法需要通过对象调用

    你的问题
    1.对静态使用不了解
    2.对对象使用不了解

    多多学习

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

报告相同问题?

问题事件

  • 系统已结题 10月28日
  • 已采纳回答 10月20日
  • 创建了问题 10月20日

悬赏问题

  • ¥15 麒麟V10桌面版SP1如何配置bonding
  • ¥15 Marscode IDE 如何预览新建的 HTML 文件
  • ¥15 K8S部署二进制集群过程中calico一直报错
  • ¥15 java python或者任何一种编程语言复刻一个网页
  • ¥20 如何通过代码传输视频到亚马逊平台
  • ¥15 php查询mysql数据库并显示至下拉列表中
  • ¥15 freertos下使用外部中断失效
  • ¥15 输入的char字符转为int类型,不是对应的ascall码,如何才能使之转换为对应ascall码?或者使输入的char字符可以正常与其他字符比较?
  • ¥15 devserver配置完 启动服务 无法访问static上的资源
  • ¥15 解决websocket跟c#客户端通信