閱讀800 返回首頁    go 阿裏雲 go 技術社區[雲棲]


Java和C有什麼區別,應該學習Java還是C

java室友c 發展而來,與c 有類似之處,不過java更加清晰、規模較小,容易學習。經過高手們的加工,java從根本上解決了c 的固有缺陷,成為了一種新的完全麵向對象的語言。

java與c 類似,但也存在多處不同之處,當然,如果有c基礎,學習java會更加容易。

1000

多重繼承

C 支持多重繼承,它允許多父類派生一個子類。也就是說,一個類允許繼承多個父類。盡管多重繼承功能很強,但使用複雜,而且會引起許多麻煩,編譯程序實現它也很不容易。所以 Java 不支持多重繼承,但允許一個類實現多個接口。可見,Java 既實現了 C 多重繼承的功能,又避免了 C 的許多缺陷。

指針

Java 沒有指針的概念,從而有效地防止了在 C/C 語言中,容易出現的指針操作失誤(如指針懸空所造成的係統崩潰)。在 C/C 中,指針操作內存時,經常會出現錯誤。在Java 中沒有指針,更有利於 Java 程序的安全。

如果你想學習Java可以來這個群,首先是二二零,中間是一四二,最後是九零六,裏麵可以學習和交流,也有資料可以下載。

1000

數據類型

Java 是完全麵向對象的語言,所有方法和數據都必須是類的一部分。除了基本數據類型之外,其餘類型的數據都作為對象型數據。例如對象型數據包括字符串和數組。類將數據和方法結合起來,把它們封裝在其中,這樣每個對象都可實現具有自己特點的行為。而 C 將函數和變量定義為全局的,然後再來調用這些函數和變量,從而增加了程序的負擔。此外,Java 還取消了 C/C 中的結構和聯合,使編譯程序更簡潔。

如果你想學習C/C++可以來這個群,首先是三三零,中間是八五九,最後是七六六,裏麵可以學習和交流也有資料可以下載。

1000

Java 不支持缺省函數參數,而 C 支持。

在 C 中,代碼組織在函數中,函數可以訪問程序的全局變量。C 增加了類,提供了類算法,該算法是與類相連的函數,C 類方法與 Java 類方法十分相似。由於 C 仍然支持 C,所以 C 程序中仍然可以使用 C 的函數,結果導致函數和方法混合使用,使得 C 程序比較混亂。

1000

類型轉換

在 C 和 C 中,有時出現數據類型的隱含轉換,這就涉及了自動強製類型轉換問題。例如,在 C 中可將一個浮點值賦予整型變量,並去掉其尾數。Java 不支持 C 中的自動強製類型轉換,如果需要,必須由程序顯式進行強製類型轉換。


最後更新:2017-09-17 22:34:26

  上一篇:go  spring boot druid mybatis 多數據源 配置
  下一篇:go  centos 6 apt.sw.be 錯誤 無法yum安裝軟件解決方案