欣赏世界级高手的代码
System.out.println(“Hello World!”)的源码
/**
打印字符串,然后终止到下一行. 这个方法的行为会调用 print(String s)的方法
*/
public void println(String x){
synchronized (this) {
//加锁
print(x);//调用print()方法
newLine();//调用换行符方法
}
}
/**
打印一个字符串,如果参数为null,则字符串打印为"null".否则,字符串的字符将根据平台的默认字符编码转换为字节,
并且这些字节完全按照write(int) 方法的方式写入.
*/
public void print(String s){
if(s == null){
s = "null";
}
write(s);
}
//按照write(int) 的方式写入
public void write(String s){
try{
synchronized (this){
ensureOpen();
textOut.write(s);
textOut.flushBuffer();
charOut.flushBuffer();
if(autoFlush && (s.indexOf('\n') >= 0))
out.flush();
}
}catch (InterruptedIOException x) {
Thread.currentThread().interrup