简易[Java]个人项目_重写从超类继承的方法:定义一个名为Point类表示点,构造方法public Point(double x, double y),访问方法有get X()和get Y()。

个人写作项目:重写从超类继承的方法:定义一个名为Point类表示点,构造方法public Point(double x, double y),访问方法有get X()和get Y()。

(1) 重写从超类继承的toString()方法,调用该方法返回类点的x和y坐标值;
(2) 重写equals()方法,当两个点的x和y坐标分别相等,方法返回true,否则返回false;
(3) 重写hashCode()方法,计算哈希码;
(4) 编写main()方法,测试上述方法的使用。
【提示】建立完整的JavaBean类,重写相应方法即可

测试类:

public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        System.out.print("请输入X坐标:");
        double x = input.nextDouble();
        System.out.print("请输入Y坐标:");
        double y = input.nextDouble();
        Point point = new Point(x, y);
        System.out.println("坐标X,Y分别为:" + point.toString());
        System.out.println("坐标是否相等:" + point.equals(x));
        System.out.println("坐标的哈希值为:" + point.hashCode());

    }

参与类:


/**
 * @program: Day01
 * @ClassName Point
 * @description(类信息): 坐标点
 * @author: honor
 * @create: 2024-04-28 10:12
 * @Version 1.0
 **/
public class Point extends Object {
    private double x;
    private double y;

    public Point(double x, double y) {
        this.x = x;
        this.y = y;
    }

    public double getX() {
        return x;
    }

    public double getY() {
        return y;
    }

    @Override
    public String toString() {
        super.toString();
        return getX() + "\t" + getY();
    }

    @Override
    public boolean equals(Object obj) {
        return x == y;
    }

    @Override
    public int hashCode() {
        super.hashCode();
        return (int)(getX()+getY());
    }
}

思路:

正常写作,基础的继承与重写操作,无其它特殊点.

问题:

哈希值不够熟悉,整数哈希值是其本身
在超类Object可以不写 extends 依旧能够继承
super.String等重写类内调用父类不够熟悉,容易出现类型不同的操作失误

总结:

较为基础的一次写作,方法运用正常无特别注意的地方.需要熟悉相关概念的熟悉写作,方法通用性较好.

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值