-
1 # K友
-
2 # 老衲要還俗ing
現階段流行的就這麼幾種,一般來講,現在的主流是學習C語言為基礎,但是說不定過幾年就變成了JAVA呢,對吧。
共通之處很多,各有千秋吧。
-
3 # GPS跟蹤器LED大燈
不是,如果c++跟java比,說是一個級別的還可以比較下。C語言跟java比較,差別太大了!一個是面向過程的,一個是面向物件的!一個以高效著稱,一個以跨平臺自居。不具備可比性。
-
4 # 芯板坊
java是面向物件的程式語言。c是面向過程的程式語言,而且JAVA是可以跨平臺的。而C語言不能,但能夠直接操作硬體,並且生成機器碼的效率高。C語言有指標,想要學好C語言,指標就必須學好。JAVA是沒有指標的。在C語言中,是可以不初始化使用的,而在JAVA中,是必須初始化值的。總的來說,C語言是基礎語言,JAVA是面向物件的一門語言。
-
5 # 東風高揚
如果你把C語言搞明白的話,再學C++,然後學Java的話就比較容易學了。Java是已經有了積木塊,用積木塊一塊一塊搭起來就是專案了。而C語言還得一步一步做積木塊,在一步一步搭起來才是專案。
用相機來簡單可能比較貼切的比喻是,Java是傻瓜式,而C要比較複雜的設定才能出來比較好的相片。Java是有很多的方法別人已經給你做好了,你拿來用就可以了。但C的話你得自己去寫那些方法,然後再用。
如果C學好了,你能明白很多比較深入的計算機語言的原理,而Java學好了,你就是在別人搭建好的平臺上的應用專家。但C還是有很多很多應用的地方。
C++與Java比較類似。
-
6 # 頹廢131760435
C語言想鐵,JAVA像刀,實際JAVA底層實現語言 也是C語言,C語言實際也可以在window和linux上執行.懂JAVA的很多,但是寫好C的 相比更少. 那你切菜是用鐵片切的快 還是刀呢?
-
7 # 問鼎原創
我發現國內對於java真的是盲目崇拜跟風,好多人爸java的地位提升到極高的檔次,雖然各有優缺點,但java本身的環境jvm主要就是c寫的好吧?雖然c和c++古老繁瑣,但從歷史和強大來講,java只能算兒子輩
-
8 # ElecGames
差遠了,c是最接近機器語言的,可以直接翻譯成彙編。java還要透過虛擬機器執行,更像指令碼語言。好處就是既然在虛擬機器裡,那可就自由了,什麼垃圾回收都能實現,指標當然也不需要了,壞處就是效率肯定不如本地語言。
-
9 # 菠菜王子
簡單說一下前提:C語言的設計目標是提供一種能以簡易的方式編譯、處理低階儲存器、產生少量的機器碼以及不需要任何執行環境支援便能執行的程式語言。C語言語法簡單便捷,效能快速,只比組合語言慢大概10%到20%,但是組合語言是無法一套程式碼多個平臺移植。但是C語言的產生卻解決了這個問題。高效快速,並且可以直接透過指標去操作硬體的特性,深得硬體開發者的喜歡。
但是C語言的缺點是什麼,當你開發大型專案的時候,指標跟結構體,會造成程式碼難理解臃腫等等問題,並且語法不夠嚴謹,對變數的型別約束不嚴格,影響程式的安全性,對陣列下標越界不作檢查等。從應用的角度,C語言比其他高階語言較難掌握。也就是說,對用C語言的人,要求對程式設計更熟練一些。
隨著企業的升級和使用者的增多,開發者希望有一個面對物件的並且開發快速通用,跨平臺的語言,這樣JAVA隨之產生。JAVA模組化的開發方式,解放了開發者的思想,並且更加方便,一套程式碼可以通用到各個平臺,因為java在底層將這些差異做了遮蔽。操作之後的效果是同樣的。但是JAVA的實現卻跟C有了明顯的區別,JAVA依賴一個JVM直譯器,JAVA程式碼編譯後不是生成二進位制檔案,而是變為一個class結尾的檔案,交由JVM解釋成對應的二級制程式碼,這樣就能在各個平臺進行通用。所以就會產生編譯解釋差時間。而且JAVA自帶了記憶體回收機制,頻繁的GC會造成系統卡頓。所以效率沒有c語言那麼高,至少慢了20%。
如果基於效率上JAVA是無法跟C語言相比較。但是如果作為開發效率自然就是JAVA更勝一籌,尤其是針對企業級的應用,那自然是更適合多人協作等等。如果做對比還是根據你的使用方向,現在如果針對的是硬體還是C語言合適,做後臺、大型應用還是JAVA更方便。
-
10 # 大凱
很多人以為java能跨平臺,而c不能,其實錯了,c,c++都能跨平臺(不是vc),c是java他爹那輩的,可以說java,python等都是直接或間接用c開發,所以說c最牛逼,但不是面向物件
-
11 # 繼科雜貨店
“級別”定義不清楚,無法給出準確答案。
前者面向物件,後者面向過程。
前者主要做web,Android,雲計算。後者主要系統核心,嵌入式開發。
主要應用的領域不同,從這一點來看不屬於一個 level
回覆列表
不是很明白你指的同一級別是什麼。
C語言和Java的使用場景也不太相同。
C語言主要用於嵌入式開發,或是是一些對效能要求比較高的軟體,像是Apache http server,liunx作業系統以及目前很多程式語言的解析程式等等。
而Java由於主要用於服務端程式的開發,自己Android的開發。不過鑑於甲骨文和谷歌之間已經因為Java打了好幾場官司,谷歌應該會慢慢的放棄Java而推廣另一門Android開發語言Kotlin。