亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    學(xué)Java要先學(xué)C語言嗎

    學(xué)Java要先學(xué)C語言嗎

    學(xué)Java要先學(xué)C語言嗎

    可以不要,Java是一門面向?qū)ο蟮恼Z言而C是一門面向過程的語言,有些人之所以選擇先學(xué)C再學(xué)Java,其主要是因為Java和C有許多語法相似的地方,如果C語言入門,學(xué)java就會簡單一點(diǎn)。

    Java和C的區(qū)別

    Java和C都是指令式語言(Imperative Language),不同的是Java有面向?qū)ο螅∣O)成分在里面,而C是完全面向過程的,C的高級版本C++、C#支持面向?qū)ο蟆?/p>

    另外一個不同是,Java跨平臺,既不同的操作系統(tǒng)都可以通過JVM來解釋Java程序,而C、C++、C#則是與平臺相關(guān)的,有些指令只在某些操作系統(tǒng)中才能執(zhí)行。具體原因是,Java是解釋型語言,所有代碼都會翻譯成統(tǒng)一的、與系統(tǒng)無關(guān)的bytecode,然后放到JVM上運(yùn)行;而C是編譯式語言,代碼要先通過編譯器轉(zhuǎn)換成與系統(tǒng)相關(guān)的中間代碼,然后才能運(yùn)行。

    再一個不同是,Java不支持系統(tǒng)調(diào)用,既無法與操作系統(tǒng)進(jìn)行交互,這是由它跨平臺的特點(diǎn)決定的,而C則可以調(diào)用系統(tǒng)中的指令,如fork()。這也就是為什么Java中只有線程(Thread)概念而沒有進(jìn)程(Process)概念,而C兩者均有。

    再者,Java無法對內(nèi)存進(jìn)行控制,而C則可以通過指針對內(nèi)存進(jìn)行人為分配。
    還有一點(diǎn),Java有Gabbage Collection機(jī)制,可以自動回收不再使用的空間,而C則要用free()函數(shù)釋放空間。

    推薦教程:《Java教程》

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號