有人知道为什么PrintStream的成员调用println是同步的吗?
例如:public synchronized void println (String str)
但为什么public void println (char[] chars)
没有同步?
答案 0 :(得分:1)
我查看了given link
根据方法签名,它表示src
已同步且println(String)
未同步。但是,当您阅读println(char[])
的描述时,它会打印出给定println(char[])
的字符串表示形式,即它会隐式地将给定的char[]
转换为char[]
并调用{{ 1}}方法。
因此即使String
未同步,它也会通过调用println(String)
隐式地实现同步。