toString方法介绍与重写

简介: toString方法介绍与重写

toString方法

基本介绍

  • 默认返回:全类名+@+哈希值的十六进制,【查看object的toString方法】子类往往重写toString方法,用于返回对象的属性信息。
  • 重写toString方法,打印对象或者拼接对象时,都会自动调用该对象的toString形式。
  • 当直接输出一个对象时,toString方法会被默认的调用。

重写toString方法的必要性

未重写的打印结果

public class Stu {
    public String name;

    public Stu(String name, int age, String sex) {
        this.name = name;
        this.age = age;
        this.sex = sex;
    }

    public int age;
    public String sex;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }
}

测试类

public class test01 {
    public static void main(String[] args) {
        Stu stu = new Stu("bob",10,"nan");
        System.out.println(stu);
    }
}

image.png

重写后

public class Stu {
    public String name;

    public Stu(String name, int age, String sex) {
        this.name = name;
        this.age = age;
        this.sex = sex;
    }

    public int age;
    public String sex;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getSex() {
        return sex;
    }

    @Override
    public String toString() {
        return "Stu{" +
                "name='" + name + '\'' +
                ", age=" + age +
                ", sex='" + sex + '\'' +
                '}';
    }
    public void setSex(String sex) {
        this.sex = sex;
    }
}

image.png

相关文章
企业微信接入系列-自建应用
本文主要介绍在接入企业微信时,需要自建应用,以及应用的配置
企业微信接入系列-自建应用
|
6月前
|
存储 文字识别 自然语言处理
通义大模型在文档自动化处理中的高效部署指南(OCR集成与批量处理优化)
本文深入探讨了通义大模型在文档自动化处理中的应用,重点解决传统OCR识别精度低、效率瓶颈等问题。通过多模态编码与跨模态融合技术,通义大模型实现了高精度的文本检测与版面分析。文章详细介绍了OCR集成流程、批量处理优化策略及实战案例,展示了动态批处理和分布式架构带来的性能提升。实验结果表明,优化后系统处理速度可达210页/分钟,准确率达96.8%,单文档延迟降至0.3秒,为文档处理领域提供了高效解决方案。
748 1
|
9月前
|
传感器 人工智能 物联网
健康监测设备的技术革命:AI+物联网如何让你随时掌握健康数据?
健康监测设备的技术革命:AI+物联网如何让你随时掌握健康数据?
1174 19
|
存储 C语言
C语言:一维数组的不初始化、部分初始化、完全初始化的不同点
C语言中一维数组的初始化有三种情况:不初始化时,数组元素的值是随机的;部分初始化时,未指定的元素会被自动赋值为0;完全初始化时,所有元素都被赋予了初始值。
1432 2
|
安全 应用服务中间件 网络安全
包过滤防火墙
【8月更文挑战第17天】
592 1
|
JSON Java fastjson
java小工具util系列3:JSON和实体类转换工具
java小工具util系列3:JSON和实体类转换工具
310 2
|
存储 算法 程序员
操作系统(12)----页面分配策略
操作系统(12)----页面分配策略
631 1
|
druid Java 关系型数据库
SpringBoot 的多数据源配置
SpringBoot 的多数据源配置
2344 0
SpringBoot 的多数据源配置
ElementUI 为 DatePicker 日期选择器组件添加前缀说明文字
当我们使用 ElementUI 构建表单页面的时候,经常需要使用到复合型输入框,可前置或后置元素,一般为标签或按钮,作为该输入框的说明性文字。
1509 0
ElementUI 为 DatePicker 日期选择器组件添加前缀说明文字
|
Python
Python(二十九)pycharm连接调试器失败 Interrupted function call accept failed~
Pycharm在使用调试器模式时报错: Interrupted function call: accept failed
651 0