基本介绍
toString方法是Object类中常用的一个方法,使用时有以下两种情况
(1)默认情况(未被重写的时候)
会默认返回:全类名(包名+类名)+@+哈希值的十六进制
在Object类中toString方法的源码是这样定义的
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
(2)被重写的情况
一般情况下,我们经常会重写toString方法来打印或者拼接对象的属性
重写后,默认是把对象的属性输出
在IDEA中重写toString的快捷键是alt+insert -->toString,重写的默认toString方法代码如下
class Student{
private String name;
private int age;
private String job;//定义了Student类的属性,来看toString方法返回的东西
public Student(String name, int age, String job) {
this.name = name;
this.age = age; //构造器
this.job = job;
}
//重写toString方法,输出对象的属性
@Override
public String toString() { //这是输出对象属性的toSring方法,当然也可以自己更改
return "Student{" +
"name='" + name + '\'' +
", age=" + age +
", job='" + job + '\'' +
'}';
}
}
注意细节:当输出一个对象时,toString方法默认被调用
比如面(2)中的代码,如果在main函数中创建一个Student类的student对象,输出student的时候会默认调用toString方法
System.out.println(student); //两行代码等价
System.out.println(student.toString());
版权声明:本文为m0_61373339原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。