Java toString方法使用超全讲解

 更新时间:2023年05月19日 12:00:19   作者:在摆烂的小母  
在Java中所有的类都有一个共同的父类Object(默认继承,不用加extends关键字),toString方法就是Object类的一个方法,用来返回该对象的字符串表示形式,下面这篇文章主要给大家介绍了关于Java toString方法使用的相关资料,需要的朋友可以参考下

一、Object类中toString的作用

1、在主方法中我们可以直接用toString输出对象其中的内容

2、我们需要直接输出对象中所属内容时,直接使用toString方法输出语句,输出内容不友好,不便于阅读

        子类:

public class Student {
    private String name;
    private int age;
    private double height;
    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 double getHeight() {
        return height;
    }
    public void setHeight(double height) {
        this.height = height;
    }
    public Student() {
    }
    public Student(String name, int age, double height) {
        this.name = name;
        this.age = age;
        this.height = height;
    }
}

         父类:

public class Test {
    public static void main(String[] args) {
        //创建一个Student类的具体实例:
        Student s = new Student("菲菲",19,160.8);
        //System.out.println(s);//com.msb.test01.Student@4554617c
        System.out.println(s);
    }
}

3、上述两个代码书写后在测试类Test中输出为下:

二、正确使用toString

子类对父类提供的toString方法不满意,进行改写,使之符合自己的需求!

        !!!按照父类提供的模板进行改写!!!

        改写后输出结果为:

总结:toString的作用就是对对象进行“自我介绍”,一般子类对父类提供的toString都不满意,都要进行重写。

三、在IDEA中高效使用toString

第一步:alt +insert

第二步:选中toString()

第三步:将所需参数选中,点击OK!

第四步:生成你所需的方法,也可在此基础上进行修改达到最佳效果!

四、总结

toString方法:

        生成一个toString方法,将你需要的内容整合好,使你调用这个方法时直接输出,

是主方法中的输出语句中System.out.println(对象 .toString() );直接输出所需内容!

附:Java toString方法使用错误汇总

Java中的toString()方法是一个非常常用的方法,但是在使用时也需要注意一些问题,否则可能会出现错误。以下是一些常见的使用错误:

  • 忘记重写toString()方法

如果我们没有在自定义类中重写toString()方法,那么默认会使用Object类中的toString()方法,该方法返回的是一个包含类名和哈希码的字符串,这通常不是我们想要的结果。因此,我们需要在自定义类中重写toString()方法,以返回我们需要的字符串表示形式。

  • toString()方法中出现空指针异常

如果我们在toString()方法中引用了一个空对象的属性,那么就会出现空指针异常。因此,在使用toString()方法时,需要确保所有引用的属性都不为空。

  • toString()方法中出现死循环

如果我们在toString()方法中引用了该类的对象,而该对象又引用了该类的对象,那么就会出现死循环,导致程序崩溃。因此,在使用toString()方法时,需要确保不会出现循环引用的情况。

  • toString()方法中返回的字符串过长

如果我们在toString()方法中返回的字符串过长,那么可能会导致程序的性能下降。因此,在使用toString()方法时,需要确保返回的字符串不会过长,可以只返回一些关键信息。

总之,在使用toString()方法时,需要注意以上问题,以确保程序的正确性和性能。

到此这篇关于Java toString方法使用超全讲解的文章就介绍到这了,更多相关toString方法使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java锁擦除与锁粗化概念和使用详解

    Java锁擦除与锁粗化概念和使用详解

    这篇文章主要介绍了Java锁擦除与锁粗化概念和使用,锁擦除的主要判定依据来源于逃逸分析的数据支持,如果判断在一段代码中,堆上的所有数据都不会逃逸出去从而被其他线程访问到,那就可以把它们当做栈上数据对待,认为它们是线程私有的,同步加锁自然就无须进行
    2023-02-02
  • SpringMvc返回modelandview返回的页面无法跳转问题及解决

    SpringMvc返回modelandview返回的页面无法跳转问题及解决

    这篇文章主要介绍了SpringMvc返回modelandview返回的页面无法跳转问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • springboot ehcache 配置使用方法代码详解

    springboot ehcache 配置使用方法代码详解

    EhCache是一个比较成熟的Java缓存框架,Springboot对ehcache的使用非常支持,所以在Springboot中只需做些配置就可使用,且使用方式也简易,今天给大家分享springboot ehcache 配置使用教程,一起看看吧
    2021-06-06
  • JAVA hashCode使用方法详解

    JAVA hashCode使用方法详解

    本文详细解释了JAVA hashCode的使用方法,提供了测试hashCode和equals方法的使用实例
    2013-11-11
  • java优化if-else的11种方案

    java优化if-else的11种方案

    If-Else结构是一种常见的条件判断语句,通过优化If-Else结构,可以提高代码的可读性和执行效率,本文主要介绍了java优化if-else的11种方案,感兴趣的可以了解一下
    2024-08-08
  • Java实现的时间戳与date对象相互转换功能示例

    Java实现的时间戳与date对象相互转换功能示例

    这篇文章主要介绍了Java实现的时间戳与date对象相互转换功能,结合具体实例形式分析了java日期与时间戳类型的表示与转换相关操作技巧,需要的朋友可以参考下
    2017-06-06
  • Java实现压缩图片大小

    Java实现压缩图片大小

    这篇文章主要为大家详细介绍了Java实现压缩图片大小,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • Spring Data JPA踩坑记录(@id @GeneratedValue)

    Spring Data JPA踩坑记录(@id @GeneratedValue)

    这篇文章主要介绍了Spring Data JPA踩坑记录(@id @GeneratedValue),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • 详解JDK9特性之JPMS模块化

    详解JDK9特性之JPMS模块化

    JDK9引入了一个特性叫做JPMS(Java Platform Module System),也可以叫做Project Jigsaw。模块化的本质就是将一个大型的项目拆分成为一个一个的模块,每个模块都是独立的单元,并且不同的模块之间可以互相引用和调用。本文将详细介绍JDK9特性之JPMS模块化。
    2021-06-06
  • Java利用POI读取、写入Excel的方法指南

    Java利用POI读取、写入Excel的方法指南

    这篇文章主要给大家介绍了关于Java利用POI读取、写入Excel的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-03-03

最新评论