gpt4 book ai didi

java - println使用什么机制?

转载 作者:行者123 更新时间:2023-11-29 07:00:44 25 4
gpt4 key购买 nike

我知道 System.out 对象的 println 方法可以用来打印任何对象,不管它属于哪个类。但是谁能告诉我 println 用来完成这个任务的机制吗?

最佳答案

在对象上调用 System.out.println 使用 ObjecttoString() 方法 - 中的默认实现Object 类,或覆盖此默认值的类的实现。

System.out.println,最终使用 PrintStream 的各种 println 方法之一,因为 System.out 是一个 PrintStream 实例。

如果您将 String 传递给 System.out.println,它将调用 println(String)。如果您将 char[] 传递给它,它将调用 println(char[])。如果您传递任何其他类型的 Object,它将调用 println(Object)(除非编译器决定将 Object 转换为 String,使用对象的 toString() 方法,然后改为调用 println(String)

println(Object x) 通过调用 String.valueOf()Object 转换为 String,它返回“null”(对于 null 对象)或 obj.toString()

无论哪种方式,都会使用 ObjecttoString() 方法,除非 Object 为 null。

关于java - println使用什么机制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26583058/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com