C語(yǔ)言,C++語(yǔ)言,Java語(yǔ)言有什么區(qū)別

C語(yǔ)言,C++語(yǔ)言,Java語(yǔ)言有什么區(qū)別

ID:37975024

大?。?6.39 KB

頁(yè)數(shù):4頁(yè)

時(shí)間:2019-06-04

C語(yǔ)言,C++語(yǔ)言,Java語(yǔ)言有什么區(qū)別_第1頁(yè)
C語(yǔ)言,C++語(yǔ)言,Java語(yǔ)言有什么區(qū)別_第2頁(yè)
C語(yǔ)言,C++語(yǔ)言,Java語(yǔ)言有什么區(qū)別_第3頁(yè)
C語(yǔ)言,C++語(yǔ)言,Java語(yǔ)言有什么區(qū)別_第4頁(yè)
資源描述:

《C語(yǔ)言,C++語(yǔ)言,Java語(yǔ)言有什么區(qū)別》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。

1、C語(yǔ)言,C++語(yǔ)言,Java語(yǔ)言有什么區(qū)別C不只能考級(jí)!!UNIX,WINDOWS漏洞,單片機(jī)。。很多地方都用到了C!!C語(yǔ)言是高級(jí)語(yǔ)言的基礎(chǔ),學(xué)習(xí)計(jì)算機(jī)語(yǔ)言可以先學(xué)C,但如果以后不用C直接學(xué)C++也行,但入門(mén)稍微困難點(diǎn)。C是面向過(guò)程編程的,這樣往往會(huì)導(dǎo)致所謂的單一程序,既所有的功能只能包含在幾個(gè)(通常是一個(gè))代碼模塊中。而C++是面向?qū)ο缶幊蹋∣OP)的,他杜絕了C面向過(guò)程的缺陷.OOP常常要使用許多代碼模塊,每個(gè)模塊都有特定的功能,而且是孤立的。OOP提供了非常強(qiáng)大的多樣性,大大增強(qiáng)了代碼的重用機(jī)會(huì)!C語(yǔ)言有一個(gè)突出的優(yōu)點(diǎn)就是適合于多種操作系統(tǒng),如DOS、UNIX,也適用于多

2、種機(jī)型。當(dāng)然,C語(yǔ)言也有自身的不足,比如:C語(yǔ)言的語(yǔ)法限制不太嚴(yán)格,對(duì)變量的類型約束不嚴(yán)格,影響程序的安全性,對(duì)數(shù)族下標(biāo)越界不作檢查等。從應(yīng)用的角度,C語(yǔ)言比其他高級(jí)語(yǔ)言較難掌握??傊珻語(yǔ)言既有高級(jí)語(yǔ)言的特點(diǎn),又具有匯編語(yǔ)言的特點(diǎn);既是一個(gè)成功的系統(tǒng)設(shè)計(jì)語(yǔ)言,有時(shí)一個(gè)使用的程序設(shè)計(jì)語(yǔ)言;既能用來(lái)編寫(xiě)不依賴計(jì)算機(jī)硬件的應(yīng)用程序,又能用來(lái)編寫(xiě)各種系統(tǒng)程序;是一種受歡迎、應(yīng)用廣泛的程序設(shè)計(jì)語(yǔ)言。C++:面向?qū)ο蟮恼Z(yǔ)言.是一門(mén)獨(dú)立的語(yǔ)言;他并不依賴C語(yǔ)言.是編程語(yǔ)言中最復(fù)雜的一門(mén).而VC是用微軟VisualC++編譯器編譯的語(yǔ)言,與標(biāo)準(zhǔn)c++有一些細(xì)微的不同.Java程序中的每個(gè)變量要

3、么是基本數(shù)據(jù)類型(boolean,char,byte,short,int,long,float,double),要么是對(duì)對(duì)象的引用C++有許多種基本類型,額外還有struct,union,enum,數(shù)組和指針,C++指針可以指向?qū)ο?,也可以不指向?qū)ο驤ava沒(méi)有枚舉、聯(lián)合類型,因?yàn)镴ava認(rèn)為沒(méi)有必要。將可有可無(wú)的語(yǔ)言元素去掉是Java對(duì)C/C++做出的一大改變,因此,普遍認(rèn)為Java較C++更輕便,更精簡(jiǎn)Java采用Unicode字符集,C++通常用ASCII字符集。但ASCII是Unicode的子集,對(duì)于習(xí)慣于ASCII的程序員感覺(jué)不到區(qū)別Java中的boolean類型不能轉(zhuǎn)

4、換成其他類型,反之亦然。C++最近引進(jìn)了bool類型,代表布爾類型,整型也作為邏輯判斷模板是一種“泛型編程思想”,它有別于“面向?qū)ο缶幊趟枷搿?。C++在很大程度上已經(jīng)支持了這種新型編程方法,特別是STL的出現(xiàn)Java目前仍未支持泛型編程,不過(guò)據(jù)說(shuō)Sun公司有在Java中引入模板的計(jì)劃C++支持“運(yùn)算符的重載”,這是它的一個(gè)很重要的多態(tài)特征,是數(shù)據(jù)抽象和泛型編程的利器。它允許直接對(duì)對(duì)象進(jìn)行四則運(yùn)算,正像基本數(shù)據(jù)類型那樣Java不支持這種多態(tài)機(jī)制,也是為降低復(fù)雜性兩種語(yǔ)言都支持方法重載(overloading)在C++中,為了允許運(yùn)行時(shí)動(dòng)態(tài)決定哪個(gè)函數(shù)被調(diào)用,一個(gè)函數(shù)必須用virtu

5、al修飾。virtual關(guān)鍵字被自動(dòng)繼承,用以支持多態(tài)凡是沒(méi)有用virtual修飾的成員函數(shù)(包括static)都是靜態(tài)綁定的,即在編譯時(shí)決定調(diào)用哪個(gè)版本而在Java中,除了static、final、private是靜態(tài)綁定以外,所有方法一律按動(dòng)態(tài)綁定處理C++中有“拷貝構(gòu)造函數(shù)”的概念,在三種情況下,自動(dòng)調(diào)用它用一個(gè)對(duì)象初始化另一對(duì)象對(duì)象作實(shí)參進(jìn)行函數(shù)調(diào)用對(duì)象作函數(shù)的返回值通常,當(dāng)一個(gè)對(duì)象需要做“深拷貝”(錢(qián)能:《C++程序設(shè)計(jì)教程》)時(shí),我們需要為它事先定義“拷貝構(gòu)造函數(shù)”、“賦值運(yùn)算符的重載函數(shù)”和“析構(gòu)函數(shù)”;否則編譯器將以“按位copy”的形式自動(dòng)生成相應(yīng)的缺省函數(shù)。倘

6、若類中含有指針成員或引用成員,那么這三個(gè)默認(rèn)的函數(shù)就隱含了錯(cuò)誤Java則沒(méi)有這種語(yǔ)法結(jié)構(gòu)和語(yǔ)義邏輯C++支持inline函數(shù),可以避免函數(shù)的堆棧調(diào)用,提高運(yùn)行效率Java無(wú)這種語(yǔ)義C++中,構(gòu)造函數(shù)的初始化列表是這樣使用的:首先按繼承順序調(diào)用基類的構(gòu)造函數(shù)構(gòu)造基類對(duì)象,然后按聲明順序調(diào)用成員對(duì)象的構(gòu)造函數(shù)構(gòu)造成員對(duì)象,最后對(duì)列表中出現(xiàn)的成員變量做初始化Java不采用初始化列表這種構(gòu)造機(jī)制它們的構(gòu)造順序基本一致:靜態(tài)變量初始化靜態(tài)初始化塊(Java)調(diào)用基類的構(gòu)造函數(shù)構(gòu)造基類對(duì)象實(shí)例變量的初始化構(gòu)造函數(shù)的其余部分Java使用abstract關(guān)鍵字修飾抽象方法或抽象類C++的對(duì)等語(yǔ)法

7、是“純虛函數(shù)”和“抽象類”兩者都使用抽象類作為繼承層次中的基類,提供一般概念,由子類實(shí)現(xiàn)其抽象方法,且抽象類都不能被直接實(shí)例化為對(duì)象Java中有final關(guān)鍵字,修飾類、方法或變量final類不能被繼承final方法不能被子類覆蓋final變量就是常量C++中沒(méi)有這個(gè)關(guān)鍵字,常量可以使用const或#define定義const還可以修飾成員函數(shù),即“常成員函數(shù)”,當(dāng)一個(gè)const成員函數(shù)修改成員數(shù)據(jù),或調(diào)用非const成員函數(shù)時(shí),編譯器會(huì)報(bào)錯(cuò)我們應(yīng)將不修改成員數(shù)據(jù)的函數(shù)聲明為co

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。