JAVA中Object类的toString()方法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/z249486888/article/details/83317751

toString

public String toString()

返回该对象的字符串表示。通常,toString 方法会返回一个“以文本方式表示”此对象的字符串。结果应是一个简明但易于读懂的信息表达式。建议所有子类都重写此方法。

Object 类的 toString 方法返回一个字符串,它的值等于:

getClass().getName() + '@' + Integer.toHexString(hashCode())

 hashCode()是Object类的一个方法,返回该对象的哈希值。

哈希值是通过哈希算法计算出来的一个地址值(并非实际地址值)。

在eclipse中 右键-> source -> generate toString() 可以自动生成重写方法。

public class Student {
	private int a;
	private int b;
	public Student(int a, int b) {
		this.a = a;
		this.b = b;
	}
	@Override
	public String toString() {
		return "Student [a=" + a + ", b=" + b + "]"; //自动生成的toString()重写方法
	}
}
public class StudentDemo {
	public static void main(String[] args) {
		Student ss = new StudentSon(1, 2);
		System.out.println(ss.hashCode());//哈希值
		System.out.println(ss.toString()); 
		System.out.println("--------------");
		System.out.println(ss);
	}
}

1、当Object子类不重写toString()方法时,输出结果为:

StudentSon@12a3a380

2、当Object子类重写toString()方法时,输出结果为:

Student [a=1, b=2]

注意:直接输出一个对象的名称,就相当于调用该对象的toString()方法。

上面代码结果为:

312714112

Student [a=1, b=2]

--------------

Student [a=1, b=2]

猜你喜欢

转载自blog.csdn.net/z249486888/article/details/83317751