print对象时默认调用该对象的toString方法
2014-07-02 17:56
253 查看
Name类(重写toString方法):
-------------------
public class Name {
@Override
public String toString(){
return "test";
}
}
-------------------
==================================
ToString类(实例化Name类):
-------------------
public class ToString {
Name name = new Name();
public static void main(String[] args) {
System.out.println(new ToString().name);
}
}
-------------------
===================================
运行结果:
----------
test
空行
----------
===================================
结论:
---------
System.out.println(new ToString().name)
打印一个对象时,println方法默认调用被打印对象的toSttring方法
当我们调用Name类的实例时,就会打印出我们重写的toString 方法
---------
====================================
原因(jdk源代码):
----------
public void println(Object x) {
String s = String.valueOf(x);
synchronized (this) {
print(s);
newLine();
}
}
-------------------
public class Name {
@Override
public String toString(){
return "test";
}
}
-------------------
==================================
ToString类(实例化Name类):
-------------------
public class ToString {
Name name = new Name();
public static void main(String[] args) {
System.out.println(new ToString().name);
}
}
-------------------
===================================
运行结果:
----------
test
空行
----------
===================================
结论:
---------
System.out.println(new ToString().name)
打印一个对象时,println方法默认调用被打印对象的toSttring方法
当我们调用Name类的实例时,就会打印出我们重写的toString 方法
---------
====================================
原因(jdk源代码):
----------
public void println(Object x) {
String s = String.valueOf(x);
synchronized (this) {
print(s);
newLine();
}
}
public
static
String valueOf(Object obj) {
相关文章推荐
- 一个对象toString()方法如果没有被重写,那么默认调用它的父类Object的toString()方法,而Object的toString()方法是打印该对象的hashCode,一般hashCode就是此对象的内存地址
- MFC 调用默认对话框类对象成员和方法
- 当使用System,out.println()打印一个对象是自动调用toString方法
- IDEA debug模式下默认会调用变量的toString()方法
- 调用Thread类的方法:public final String getName() 为什么得到的线程对象的名称默认是:Thread-0、Thread-1、Thread-2、...呢?
- new 一个没有定义构造方法的子类对象,会调用父类的默认构造方法
- java直接输出对象默认调用toString()
- java 打印对象时时如何调用对象toString()方法的
- System.out.println(s) 打印值为对象引用时,调用toString()方法。
- System.out.println(s) 打印值为对象引用时,调用toString()方法。
- 验证对象在创建时就会先调用(默认)构造方法
- 调用String对象的toString()方法时报空指针异常
- java在调用System.out.println()打印一个新new的对象时,为什么会调用toString方法?
- C#编译器优化那点事 c# 如果一个对象的值为null,那么它调用扩展方法时为甚么不报错 webAPI 控制器(Controller)太多怎么办? .NET MVC项目设置包含Areas中的页面为默认启动页 (五)Net Core使用静态文件 学习ASP.NET Core Razor 编程系列八——并发处理
- 打印类对象自动调用toString方法
- 原!! java直接打印一个对象时,并不是直接调用该类的toString方法 ,而是会先判断是否为null,非null才会调用toString方法
- PHP中 对象自动调用的方法:__set()、__get()、__tostring()
- JS会自动调用toString()方法来显示日期(即“Date对象的内容”)
- java第七周实验封装一类对象English,该类对象具有一种功能printEnglish输出英文字母表。再封装一类对象Greek,该类必须是English的子类,该类对象不仅可以调用方法printE
- 输出一个对象,会默认执行toString()方法