我的朋友問了一個問題Java:爲什麼在Java中沒有clrscr? - 希望更多的澄清
Why Java doesn't support function like clrscr in C?
通過這樣的用戶給出的答案是
John3136:因爲Java是跨平臺的,可以不帶控制檯上運行時, clrscr的含義必須根據應用程序的運行方式和平臺而改變。
MVP:Java是設計爲寫/一次編譯,到處運行。這個功能不太適合這個議程。
我的問題是不是JVM處理的跨平臺差異? 請問如何像這樣的函數Thread.sleep()和System.out.println()工作呢?它們也依賴於底層平臺,就像線程在Linux和Windows中的實現方式可能不同。
我主要關心的是如果像System.out.println()這樣的函數在不同的平臺上工作,那麼也可以爲不同的平臺實現clrscr。我有點懷疑約翰和mvp的回答
Java的控制檯流媒體被認爲是非常慢的。控制檯應用程序並不是真正的焦點,所以設計師(以及大多數用戶)可能不認爲這是值得的努力,因爲它會需要很多nitpicky代碼...清除一個屏幕不僅取決於系統,而且還取決於您正在運行的控制檯。要做到這一點,需要做很多工作。 –
@cHao:我知道我已經提到了同樣的問題。閱讀後 –
你顯然從來沒有與數百種不同類型的終端戰鬥,每個終端都有自己的逃生代碼,這些代碼已經在幾十年中製造出來了,都是偶然過時的。 clrscr()只可能是因爲Windows DOS框服從ANSI控制代碼,或者因爲Unix'curses'庫的存在,NB需要用戶配置才能正確使用。 – EJP