色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

為什么java自帶的一些工具類不使用c語言來寫

洪振霞2年前16瀏覽0評論

為什么java自帶的一些工具類不使用c語言來寫?

首先,java語言要在很多平臺上運行,用c語言寫的話,你得每個平臺都編譯一次,每個平臺都要對應優化,麻不麻煩,而且產生不同的好幾個庫,增大運行時體積。

第二,并不是說c語言寫就一定好,用c寫很考驗程序員的編程水平,作為一個工具類,就要追求性能,考慮內存、指針、代碼優化等等復雜問題。而目前jit的優化功能已經非常強大了,在很多情況下運行速度與c語言相差無幾。

第三,這些代碼都要被用戶的java代碼調用,如果要在c實現那么這些工具類就必須要弄一套jni調用,會增加不必要的運行時開銷,代碼復雜度增加。另外如果要在c實現,那就意味著放棄了已經寫好的java優良特點不用,撿了芝麻丟了西瓜,例如垃圾回收,異常捕捉等非常方便的特性。

第四,方便調試,設想,假如工具類是用c寫的,一個java程序員調用這個庫,結果出異常了,你得從java調試器換到支持c的調試器,例如gdb,lldb等等,然后學習怎么調試,找c里面的bug,這對于一個java程序員來說,是非常痛苦的。而用如果java寫的話直接就可以調試,并且可以使用java的異常機制。

c在java中的,為什么java自帶的一些工具類不使用c語言來寫