打印对象和toString方法
2017-06-25 15:34
483 查看
[java] view
plain copy
class Person
{
private String name;
public Person(String name)
{
this.name=name;
}
}
public classPrintObject {
public static voidmain(String[] args)
{
Person2 p=new Person("ping");
System.out.println(p.toString());
}
}
上面程序创建了一个Person对象,然后使用System.out.println()方法输出Person对象,结果如下:
Person@15db9742
System.out的println方法只能在控制台输出字符串,而Person实例是一个内存中的对象,怎么能直接转换为字符串输入呢?当使用该方法输出Person对象时,实际上输出Person对象的toString()方法的返回值,也就是这面代码效果相同
System.out.println(p);
System.out.println(p.toString());
toString方法是Object类里的一个实例方法,所有Java类都是object类的子类,因此所有Java对象都具有toString方法。
不仅如此,所有Java对象都可以和字符串进行连接运算,当Java对象和字符串进行连接运算时,系统自动调用Java对象toString()方法返回值和字符串进行连接运算下面代码效果相同
String pStr=p+””;
StringpStr=p.toString()+””;
toString()方法是一个非常特殊的方法,是一个“自我描述”方法,该方法通常用于实现当程序员直接打印该对象时,系统将会输出该对象的“自我描述”信息,用以告诉外界该对象具有的状态信息。
Object类提供的toString()方法总是返回该对象实现类的”类名+@+hashCode”值,这个返回值不能真正实现“自我描述”功能,因此我们可以重写object的toString()方法。
[java] view
plain copy
class Apple1
{
private String color;
private double weight;
public Apple1(String color,double weight)
{
this.color=color;
this.weight=weight;
}
public StringtoString()
{
return "Apple["+color+",weight:"+weight+"]";
}
}
public classToStringTest {
public static voidmain(String[] args)
{
Apple1 a=new Apple1("红色", 5.68);
System.out.println(a);
}
}
运行结果
Apple[color=红色,weight=5.68]
plain copy
class Person
{
private String name;
public Person(String name)
{
this.name=name;
}
}
public classPrintObject {
public static voidmain(String[] args)
{
Person2 p=new Person("ping");
System.out.println(p.toString());
}
}
上面程序创建了一个Person对象,然后使用System.out.println()方法输出Person对象,结果如下:
Person@15db9742
System.out的println方法只能在控制台输出字符串,而Person实例是一个内存中的对象,怎么能直接转换为字符串输入呢?当使用该方法输出Person对象时,实际上输出Person对象的toString()方法的返回值,也就是这面代码效果相同
System.out.println(p);
System.out.println(p.toString());
toString方法是Object类里的一个实例方法,所有Java类都是object类的子类,因此所有Java对象都具有toString方法。
不仅如此,所有Java对象都可以和字符串进行连接运算,当Java对象和字符串进行连接运算时,系统自动调用Java对象toString()方法返回值和字符串进行连接运算下面代码效果相同
String pStr=p+””;
StringpStr=p.toString()+””;
toString()方法是一个非常特殊的方法,是一个“自我描述”方法,该方法通常用于实现当程序员直接打印该对象时,系统将会输出该对象的“自我描述”信息,用以告诉外界该对象具有的状态信息。
Object类提供的toString()方法总是返回该对象实现类的”类名+@+hashCode”值,这个返回值不能真正实现“自我描述”功能,因此我们可以重写object的toString()方法。
[java] view
plain copy
class Apple1
{
private String color;
private double weight;
public Apple1(String color,double weight)
{
this.color=color;
this.weight=weight;
}
public StringtoString()
{
return "Apple["+color+",weight:"+weight+"]";
}
}
public classToStringTest {
public static voidmain(String[] args)
{
Apple1 a=new Apple1("红色", 5.68);
System.out.println(a);
}
}
运行结果
Apple[color=红色,weight=5.68]
相关文章推荐
- 一个对象toString()方法如果没有被重写,那么默认调用它的父类Object的toString()方法,而Object的toString()方法是打印该对象的hashCode,一般hashCode就是此对象的内存地址
- 打印对象和toString方法
- 打印对象和toString方法
- 处理对象(1)-打印对象和toString方法
- System.out.println(s) 打印值为对象引用时,调用toString()方法。
- 打印对象和ToString方法
- Java的打印对象和toString方法
- 原!! java直接打印一个对象时,并不是直接调用该类的toString方法 ,而是会先判断是否为null,非null才会调用toString方法
- 重写toString方法 打印对象为json
- 6.2.1 打印对象和toString方法
- Java 打印对象和toString 方法
- java打印对象和toString方法
- 打印对象和toString方法
- java在调用System.out.println()打印一个新new的对象时,为什么会调用toString方法?
- java 打印对象时时如何调用对象toString()方法的
- 关于打印未定义toString方法的对象
- System.out.println(s) 打印值为对象引用时,调用toString()方法。
- 当使用System,out.println()打印一个对象是自动调用toString方法
- java在调用System.out.println()打印一个新new的对象时,为什么会调用toString方法?
- JQuery each打印JS对象的方法