Object类是所有类、数组、枚举类的父类,是类层次结构的根类。每个类都使用Object作为超类。所有对象(包括
数组)都实现这个类的方法。
Object类实现了以下方法:
我们来看看源码中toString()方法是如何定义的:
public String toString() { return getClass().getName() + "@" + Integer.toHexString(hashCode()); }
通过以下程序可以看出toString()方法返回的是这个类的全称限定名加上“@”符号,最后加上这个对象的哈希值,并将
哈希值转换成十六进制输出。
在平时我们可以通过toString()方法,获取该对象信息的字符串,比如:
class User { private String name; private int age; public User(String name,int age){ this.name=name; this.age=age; } protected String getName() { return name; } public void setName(String name) { this.name = name; } } public class Main { public static void main(String[] args) { User user=new User("Bill",25); System.out.println(user.toString()); } }
输出:
[email protected]
除了直接使用toString()方法外,我们还可以重载这个方法,比如:
class User { private String name; private int age; public User(String name,int age){ this.name=name; this.age=age; } protected String getName() { return name; } public void setName(String name) { this.name = name; } @Override public String toString() { return "name="+name+"\nage="+age; } } public class Main { public static void main(String[] args) { User user=new User("Bill",25); System.out.println(user.toString()); } }
输出:
name=Bill
age=25
转载请注明出处:http://blog.csdn.net/hai_qing_xu_kong/article/details/43909597 情绪控_
时间: 2024-10-28 11:35:52