一、toString()方法:
toString方法定义的原意是返回能够描述当前这个类的事例的一串文字。但是再object中无意义,所以通常需要重写。
1.当我们输出一个对象的引用时,实际上就是调用当前对象的toString()
public class ToStringTest{
Customer cust1 = new Customer("Tom",21);
System.out.println(cust1.toString());//com.zx.equals.Customer@26f0a63f
System.out.println(cust1);//com.zx.equals.Customer@26f0a63f
}
2.Object类中toString()的定义:
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashcode());
//getClass().getName():包名.类名
//Integer.toHexString(hashcode():调用对象的hashCode()对象转为整型int输出
}
3.像String 、Date、File、包装类等都重写了Object类中的toString()方法。
使得在调用对象的toString()时,返回“实体内容”信息
4.自定义类也可以重写toString()方法,当调用此方法时,返回对象的“实体内容”
public class ToStringTest{
Customer cust1 = new Customer("Tom",21);
System.out.println(cust1.toString());//Customer[name = Tom,age = 21]
System.out.println(cust1);//Customer[name = Tom,age = 21]
}
class Customer {
private String name;
private int age;
public Customer(String name, int age) {
super();
this.name = name;
this.age = age;
}
@Override
public String toString() {
return "Customer [name=" + name + ", age=" + age + "]";
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/110972.html