Object 类的 toString 方法
返回一个字符串,该字符串由类名(对象是该类的一个实例)、at
标记符“@”和此对象哈希码的无符号十六进制表示组成。换句话说,该方法返回一个字符串,它的值等于:
getClass().getName() + '@' + Integer.toHexString(hashCode())
2. 对象如果没有父类,默认继承Object。
如果没重写toString方法,则默认是Object的toString方法返回值:类名@哈希玛值;
如果重写,则如以下返回你想返回的字符串(对象的描述);
public class Person {
private String name ;
。。。
public String toString() {
return "name" = name;
}
}
public class Orc
{
public static class A
{
String name;
int age;
public A(String name,int age){
this.name=name;
this.age = age;
}
public String getString()
{
return this.name+","+this.age;
}
}
public static void main(String[] args)
{
A obj = new A("zh",20);
System.out.println(obj);
System.out.println(obj.getString());
}
}
扩展知识:http://www.cnblogs.com/zhangjs8385/archive/2011/10/10/2205281.html
就像 System.out.print() 你可以传入一个自己的类
class MyClass{
int a;
}
如果我直接System.out.print(new MyClass())
如果我重写toString方法
class MyClass{
int a;
public String toString(){
return a+"mystring"
}
System.out.print(new MyClass());就会输出a+"mystring"的值