toString() 和 包装类的使用

本文介绍了Java中包装类的使用,包括它们如何重写Object类的toString()方法以显示实体内容,以及如何自定义重写。讨论了关于子类重写equals方法后父类调用的问题,并解释了JUnit单元测试的步骤和注意事项。同时,文章涵盖了基本数据类型与包装类之间的转换,包括自动装箱和拆箱特性,并提供了字符串与数据类型间的转换方法。
摘要由CSDN通过智能技术生成

当输出一个引用数据类型对象的时候输出地址值,其实就是使用了toString()
1.像String、Date、File、包装类都重写了Object类中的toString()方法使得在调用这些对象的时候,返回实体内容信息
2.可以自定义重写的内容,返回实体内容

问题
我重写子类equals方法为什么父类掉用equals的时候还是用的重写前的方法。
解决:我对方法的重写有个误解,在子类重写方法父类是不适用子类重写的方法的,父类重写方法子类是可以继承的。如果父类调用子类重写的方法可以通过给形参列表加入父类类型,输入子类对象的形式调用子类的方法。

package Practice;

import java.util.RandomAccess;

public class GeometricObject {
    protected String color;
    protected double weight;
    protected double radius;
    protected GeometricObject(){
        color ="white";
        weight =1.0;
        radius =1.0;
    }

    public double getWeight() {
        return weight;
    }

    public String getColor() {
        return color;
    }

    public void setColor(String color) {
        this.color = color;
    }

    public void setWeight(double weight) {
        this.weight = weight;
    }
}

package Practice;

import java.util.Objects;

public class Circle extends GeometricObject{
    private double radius;
    public Circle(){
        color="weight";
        weight=1.0;
        radius=1.0;
    }
    public Circle(double radius){

    }
    public Circle(double radius,String color,double weight){

    }

    @Override
    public boolean equals(Object object) {
       if (object ==this){
           return true;
       }else if (object instanceof Circle){
           Circle circle =(Circle) object;
           return circle.radius==this.radius&&circle.color==this.color&&circle.weight==this.weight;
       }else {
           return false;
       }
    }

    @Override
    public String toString() {
        return "Circle{" +
                "radius=" + radius +";color="+color+&#
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值