To String的几个作用
一、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@4554617cSystem.out.println(s);}
}
3、上述两个代码书写后在测试类Test中输出为下:
![外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传](https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=C%3A%5CUsers%5CAdministrator%5CAppData
二、正确使用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()方法中返回的字符串过长
如果我们在toString()方法中返回的字符串过长,那么可能会导致程序的性能下降。因此,在使用toString()方法时,需要确保返回的字符串不会过长,可以只返回一些关键信息。
总之,在使用toString()方法时,需要注意以上问题,以确保程序的正确性和性能