求解釋編程幾門語言的區別,如Java,C語言,C++。詳細點?

雨後的城市燈火闌珊


我們大學老師跟我們打比方說的,C就是父親,C++和Java就是兄弟兩個!其實我感覺Java和C++是兄妹!C語言是一個面相過程的語言!舉個例子說明,你打算去上海!這就是你想做的事!對應到計算機就是計算機想做的事!去上海,我先用火車舉例子,你得先買票,然後去火車站,等車,然後坐車,到上海!這就是面相過程語言的特點,你要一步一步去實現每一步的過程!

Java和C++都是面相對象的!面相對象的語言不需要知道它是怎樣去實現這個過程的!你只要知道這個對象,有什麼屬性和方法!然後調用它的屬性和方法去完成你這個事就行了!還是拿去上海舉例說明,有一個對象叫火車,將你的名字告訴給它的屬性,然後調用它的方法,就可以實現去上海這件事!

Java其實按說是C++的女兒!因為JAVA是在C++的基礎上,除去了C++中的指針和多重繼承的特性!然而引入了多態的特性!引入多態是讓Java變得簡單!就比如一個+號,在數學運算中,它是咱們普遍認識的加法運算,在字符串的運算中,它表示的是字符串的拼接!


嵌入式與軟件和醫學


對於很多人來說,C語言已經很老了,如果對更老的彙編語言比較瞭解的話,它就是用高級語言的格式寫的彙編語言,所以C語言出來的時候把它歸類為中級語言。

C語言同時也是懶人的語言,很多地方都被簡化了,比如A--就是A=A-1。就語言關鍵詞而言,它比英文字母還少,只有24個。

但是它的函數包特別的豐富,很多常用的程序都給你編寫好了,直接調用就行了,所以很多人更願意用它,但它是DOS下的語言。

C++是面向對象的語言,它的基礎是C,但是融入的很多WINDOWS的風格,在WINDOWS下可以直接調用WINDOWS的函數包,這讓它在WINDOWS的早期版本下編寫程序效率更高。

JAVA,是所謂的跨平臺語言,它之所以能跨平臺,是因為它是半解釋性語言,它不會被編譯成機器語言,這樣它就能不依賴於CPU的機器指令運行,從而做到跨平臺操作,就語言格式而言,可以看作是C#的簡化版本。


觀上靈雲


很高興能回答您這個問題,以下我為大家分享,我個人對這個問題的看法與想法,希望我的分享能給大家帶來幫助,也希望大家能夠喜歡我的分享。

作為一個從事軟件開發行業16年的老兵,從入行開始接觸的就是C/C++語言,目前也在使用。當中因為做移動開發的原因,使用過一點Java語言,但時間不長。針對這個問題,我想提一些自己的看法,因為水平有限,如回答有偏頗之處,還請讀者指出。

C,C++,Java語言特點

個人認為C語言,C++語言,Java語言其實正好是一段順序的計算機語言發展史。

C語言是歷史最悠久的計算機語言,大部門計算機語言入門課程都是從C語言開始的。它是一門面向過程的計算機語言,而且偏向底層,執行效率極高,大部分計算機操作系統都是用C語言編寫的。

C++語言實在C語言基礎上發展起來的,它完全兼容C語言,其相對於C語言來說,主要的特點就是增加了面向對象的特性。

Java語言比C++語言出現的更晚,其實它也是在C++基礎上進行優化而產生的一種語言,它同樣是一種面向對象的語言,但它又簡化了C++關於內存管理的複雜性。

C,C++語言區別

C語言其實是C++語言的一個子集,它們之間最大的區別就是C++支持面向對象的特性,而這就決定了它們之間的編程思路有很大的區別。C語言是將整個功能分解成步驟,然後以函數的形式一步步去解決問題。而C++語言則是將整個功能分解成對象,然後構建對象以及對象之間的行為來解決問題。

其餘的C++作為C語言的增強版本,還增加支持了另外一些語言特性,例舉如下:

  1. 支持泛型編程的機制(Template)。

  2. 支持異常處理。

  3. 支持運算符重載。

  4. 支持標準模板庫(STL)。

  5. 支持命名空間,避免全局命名衝突。

C++,Java語言區別

Java作為在C++基礎上發展而來的語言,是一種完全面向對象的語言了,不再象C++語言一樣能夠兼容面向過程的方式。

此外,在語言執行層面兩種語言也有差異,C++是一種完全編譯型的語言,需要由編譯器編譯後執行,而Java語言是一種半編譯半解釋的語言,它由編譯器編程成class中間文件後,再由虛擬機解釋器進行解釋執行。

在實際使用上,C++和Java語言最大的區別就在於內存的管理的,C++的內存資源需要程序員自己管理,它有指針的概念,通過指針的使用C++可以直接操作內存,這種做法十分靈活,但需要付出的代價就是管理複雜,容易造成程序崩潰。Java語言沒有直接操作內存的機制,由虛擬機底層來管理內存使用,更加安全可靠。

以上就是我對所提問題的一些拙見,其實現代計算機語言少說也有幾十種,它們各有各的特點,每種語言都有它最擅長的領域,我們應該按照需要解決的問題來選擇最合適的語言。

在以上的分享關於這個問題的解答都是個人的意見與建議,我希望我分享的這個問題的解答能夠幫助到大家,也希望能得到您的建議和關注。


亮亮老師之計算機編程


就編譯完的成果物來看,JAVA單獨一類。

java編譯完的是JAVA虛擬機可認識的指令,也即軟件指令。

而C/C++生成的程序是CPU可認識的指令,就是CPU可以直接運行的指令。

再說C和C++,他們編譯完成之後的鏈接符號不同。C語言的符號不帶參數和返回值信息,而C++的符號帶參數類型返回值類型等。

因此C語言的符號必須內部自己約定好。引用另一模塊函數名字正確,參數不正確的話,編譯可以通過,但在運行的時候可能會出錯。

而C++符號有嚴格參數約定,參數不正確無法鏈接。

其他就是C++編譯器會實現虛函數表等特有特性。虛函數表的實現是各自編譯器把自己實現燒製到程序中的。

如果從面向對象角度看,C是單獨一類。


三袋大菠蘿


首先,java,和c++和c的區別大致可以分為以下幾點。

1.c是面向過程的語言,c++和java是面向對象的語言.

2.c和c++,java的發展史是c->c++->java,所以c和c++很像,c++和java很像.

3.c和c++中存在指針操作,java是從c++發展而來,為了方便省去了指針操作.

4.java語言中存在c和c++中沒有的線程等一些知識點.

要是學習語言建議c->c++->java。


故事很長很長很長A


JAVA現在還是流行語言 做web頁面 安卓 小程序等等都是大流行

至於C C++沒過多瞭解 好像偏底層多一些或者做pc端的bs架構吧


分享到:


相關文章: