成華區(qū)建設(shè)局人民防空辦網(wǎng)站百度網(wǎng)站提交
#常見編程語(yǔ)言介紹
C語(yǔ)言
C++語(yǔ)言
java語(yǔ)言
javaScript語(yǔ)言
PHP語(yǔ)言
python語(yǔ)言O(shè)bject-C和Swift語(yǔ)言
C# (c sharp)語(yǔ)言
Kotlin語(yǔ)言
Go語(yǔ)言
Basic語(yǔ)言
#JAVA的發(fā)展
起源于1991年SUN公司GREEN項(xiàng)目,1996年JDK1.0正式發(fā)布
后被Oracle公司收購(gòu),一年兩次更新
主流以java8以上的版本
#JAVA的核心優(yōu)勢(shì)
跨平臺(tái)
跨平臺(tái)是 Java 語(yǔ)言的核心優(yōu)勢(shì),趕上最初互聯(lián)網(wǎng)的發(fā)展,并隨著互聯(lián)網(wǎng)的發(fā)展而發(fā)展,
建立了強(qiáng)大的生態(tài)體系,目前已經(jīng)覆蓋 IT 各行業(yè)的“第一大語(yǔ)言”,是計(jì)算機(jī)界的“英語(yǔ)”。
#Java的各版本的含義
JavaSE(Java Standard Edition):標(biāo)準(zhǔn)版,定位在個(gè)人計(jì)算機(jī)上的應(yīng)用
JavaEE(Java Enterprise Edition):企業(yè)版,定位在服務(wù)器端的應(yīng)用
JavaME(Java Micro Edition):微型版,定位在消費(fèi)性電子產(chǎn)品的應(yīng)用上
#Java的特性
跨平臺(tái)/可移植性
安全性
面向?qū)ο?br /> 簡(jiǎn)單性
高性能
分布式
多線程
健壯性
#Java的運(yùn)行機(jī)制
1.java首先利用文本編譯器編寫java源程序,源文件后綴名為 .java ;
2.再利用編譯器(javac)將源程序編譯成字節(jié)碼文件,字節(jié)碼文件后綴名為 .class ;
3.最后用虛擬機(jī)(解釋器,java)解釋執(zhí)行.
計(jì)算機(jī)高級(jí)語(yǔ)言的類型主要有編譯型和解釋型兩種,而java語(yǔ)言是兩種類型的結(jié)合。
#JVM、JRE和JDK
JVM(Java Virtual Machine): 用于執(zhí)行 bytecode 字節(jié)碼的”虛擬計(jì)算機(jī)”。不同的操作系統(tǒng)有不同版本 JVM,屏蔽了底層運(yùn)行平臺(tái)的差別,是實(shí)現(xiàn)跨平臺(tái)的核心。
Java Runtime Environment (JRE) 包含:Java 虛擬機(jī)、庫(kù)函數(shù)等。
Java Development Kit (JDK)包含:JRE,編譯器和調(diào)試器等。
#語(yǔ)言類型擴(kuò)展描述
C 語(yǔ)言
C 語(yǔ)言誕生于 1972 年,現(xiàn)代高級(jí)語(yǔ)言的鼻祖,由著名的貝爾實(shí)驗(yàn)室發(fā)明。在底層編程,比如嵌入式、病毒開發(fā)等應(yīng)用,可以替代匯編語(yǔ)言來開發(fā)系統(tǒng)程序。在高層應(yīng)用,也可以開發(fā)從操作系統(tǒng)(Linux/Windows 都基于 C 語(yǔ)言開發(fā))到各種應(yīng)用軟件。
C++語(yǔ)言
作為 C 語(yǔ)言的擴(kuò)展,C++是貝爾實(shí)驗(yàn)室于 80 年代推出的。C++是一種混合語(yǔ)言,既可以實(shí)現(xiàn)面向?qū)ο缶幊?#xff0c;也可以開發(fā) C 語(yǔ)言面向過程風(fēng)格的程序。C++語(yǔ)言在科學(xué)計(jì)算、操作系統(tǒng)、網(wǎng)絡(luò)通訊、系統(tǒng)開發(fā)、引擎開發(fā)中仍然被大量使用。
Java 語(yǔ)言
由美國(guó) SUN 公司(被 oracle 公司收購(gòu))發(fā)明于 1995 年,是目前業(yè)界應(yīng)用最廣泛、使用人數(shù)最多的語(yǔ)言,連續(xù)多年排名世界第一,可以稱之為“計(jì)算機(jī)語(yǔ)言界的英語(yǔ)”。Java 廣泛應(yīng)用于企業(yè)級(jí)軟件開發(fā)、安卓移動(dòng)開發(fā)、大數(shù)據(jù)云計(jì)算等領(lǐng)域,幾乎涉及 IT 所有行業(yè)。關(guān)于 Java 的發(fā)展歷史和特性,將在后面專門介紹。
JavaScript 語(yǔ)言
JavaScript 是一種腳本語(yǔ)言,已經(jīng)被廣泛用于 Web 應(yīng)用開發(fā);應(yīng)用范圍越來越大,重要性越來越高。目前,前端開發(fā)核心其實(shí)就是 JavaScript 語(yǔ)言。
Python 語(yǔ)言
Python 發(fā)明于 1989 年,語(yǔ)法結(jié)構(gòu)簡(jiǎn)單,易學(xué)易懂;Python 廣泛應(yīng)用于:人工智能、科學(xué)計(jì)算、web 編程等。
PHP 語(yǔ)言
PHP 原始為 Personal Home Page 的縮寫,已經(jīng)正式更名為 “PHP: Hypertext Preprocessor”。一般用于 WEB 開發(fā)領(lǐng)域;大量的中小型網(wǎng)站以及某些大型網(wǎng)站使用 PHP 開發(fā)。
Object-C 和 Swift 語(yǔ)言
Object-C 通常寫作 Objective-C 或者 Obj-C 或 OC,是根據(jù) C 語(yǔ)言所衍生出來的語(yǔ)言,繼承了 C 語(yǔ)言的特性,是擴(kuò)充 C 的面向?qū)ο缶幊陶Z(yǔ)言。OC 主要用于蘋果軟件的開發(fā)。
Swift,蘋果于 2014 年 WWDC(蘋果開發(fā)者大會(huì))發(fā)布的新開發(fā)語(yǔ)言,可與 OC 共同運(yùn)行于 Mac OS 和 iOS 平臺(tái),用于搭建基于蘋果平臺(tái)的應(yīng)用程序。
C#(c sharp)語(yǔ)言
C#是微軟公司發(fā)布的一種面向?qū)ο蟮?、運(yùn)行于.NET Framework 之上的高級(jí)程序設(shè)計(jì)語(yǔ)言。
Kotlin 語(yǔ)言
Kotlin 已正式成為 Android 官方支持開發(fā)語(yǔ)言,并且是一種可以兼容 java 的語(yǔ)言。
Go 語(yǔ)言
Go(又稱 Golang)是 Google 開發(fā)的一種靜態(tài)強(qiáng)類型、編譯型語(yǔ)言。
Basic 語(yǔ)言雖然易學(xué),但功能不夠強(qiáng)大,應(yīng)用到大程序的有效性令人懷疑。已經(jīng)逐步退出歷史舞臺(tái)。
#java特性擴(kuò)展描述
? 跨平臺(tái)/可移植性
這是 Java 的核心優(yōu)勢(shì)。Java 在設(shè)計(jì)時(shí)就很注重移植和跨平臺(tái)性。比如:Java 的 int 永遠(yuǎn)都是 32 位。不像 C++可能是 16,32,可能是根據(jù)編譯器廠商規(guī)定的變化。這樣的話程序的移植就會(huì)非常麻煩。
? 安全性
Java 適合于網(wǎng)絡(luò)/分布式環(huán)境,為了達(dá)到這個(gè)目標(biāo),在安全性方面投入了很大的精力,使 Java 可以很容易構(gòu)建防病毒,防篡改的系統(tǒng)。
? 面向?qū)ο?br /> 面向?qū)ο笫且环N程序設(shè)計(jì)技術(shù),非常適合大型軟件的設(shè)計(jì)和開發(fā)。由于 C++為了照顧大量 C 語(yǔ)言使用者而兼容了 C,使得自身僅僅成為了帶類的 C 語(yǔ)言,多少影響了其面向?qū)ο蟮膹氐仔?#xff01;Java 則是完全的面向?qū)ο笳Z(yǔ)言。
? 簡(jiǎn)單性
Java 就是 C++語(yǔ)法的簡(jiǎn)化版,我們也可以將 Java 稱之為“C+±”。跟我念“C 加加減”,指的就是將 C++的一些內(nèi)容去掉;比如:頭文件,指針運(yùn)算,結(jié)構(gòu),聯(lián)合,操作符重載,虛基類等等。同時(shí),由于語(yǔ)法基于 C 語(yǔ)言,因此學(xué)習(xí)起來完全不費(fèi)力。
? 高性能
Java 最初發(fā)展階段,總是被人詬病“性能低”;客觀上,高級(jí)語(yǔ)言運(yùn)行效率總是低于低級(jí)語(yǔ)言的,這個(gè)無法避免。Java 語(yǔ)言本身發(fā)展中通過虛擬機(jī)的優(yōu)化提升了幾十倍運(yùn)行效率。比如,通過 JIT(JUST IN TIME)即時(shí)編譯技術(shù)提高運(yùn)行效率。 將一些“熱點(diǎn)”字節(jié)碼編譯成本地機(jī)器碼,并將結(jié)果緩存起來,在需要的時(shí)候重新調(diào)用。這樣的話,使 Java 程序的執(zhí)行效率大大提高,某些代碼甚至接待 C++的效率。因此,Java 低性能的短腿,已經(jīng)被完全解決了。業(yè)界發(fā)展上,我們也看到很多 C++應(yīng)用轉(zhuǎn)到 Java 開發(fā),很多 C++程序員轉(zhuǎn)型為 Java 程序員。
? 分布式
Java 是為 Internet 的分布式環(huán)境設(shè)計(jì)的,因?yàn)樗軌蛱幚?TCP/IP 協(xié)議。事實(shí)上,通過 URL 訪問一個(gè)網(wǎng)絡(luò)資源和訪問本地文件是一樣簡(jiǎn)單的。Java 還支持遠(yuǎn)程方法調(diào)用(RMI,Remote Method Invocation),使程序能夠通過網(wǎng)絡(luò)調(diào)用方法。
? 多線程
多線程的使用可以帶來更好的交互響應(yīng)和實(shí)時(shí)行為。 Java 多線程的簡(jiǎn)單性是 Java 成為主流服務(wù)器端開發(fā)語(yǔ)言的主要原因之一。
? 健壯性
Java 是一種健壯的語(yǔ)言,吸收了 C/C++ 語(yǔ)言的優(yōu)點(diǎn),但去掉了其影響程序健壯性的部分(如:指針、內(nèi)存的申請(qǐng)與釋放等)。Java 程序不可能造成計(jì)算機(jī)崩潰。即使 Java 程序也可能有錯(cuò)誤。如果出現(xiàn)某種出乎意料之事,程序也不會(huì)崩潰,而是把該異常拋出,再通過異常處理機(jī)制加以處理。