我們都知道,語言嘛,當然是用來溝通交流、傳遞信息的,在人類的世界里,語言的種類非常多,像漢語、英語、日語、法語等等。 所以,我們不妨猜想一下,在電腦的世界里,會不會也是這樣的呢?答案是,的確如此。 為了使電腦能夠理解人的意圖,人類就必須將需解決的問題的思路、方法和手段通過電腦能夠理解的形式告訴... ...
一、什麼叫做編程
首先我們應該瞭解一下什麼叫做編程。
百度百科詞條的解釋:
編程是編定程式的簡稱,是讓電腦代我們解決某個問題,是對某個計算體系規定一定的運算方式,使計算體系按照該計算方式運行,並最終得到相應結果的過程。
對於該解釋,大家也包括我自己可能並不是很理解,那我們反正就這麼理解,一般來說編程就是寫代碼,目的是為瞭解決問題,解決什麼問題需要看需求,看甲方爸爸的需求,所以也就有了需求工程師這個職位。
這麼理解,簡單、粗暴,哈哈哈。
但是有個誤區要提醒一下,編程不一定是針對電腦程式而言的,針對具備邏輯計算力的體系,都可以算編程(這是詞條中提到的,我覺得有必要提一下)。
二、白話編程語言
然後,我們來瞭解一下關於編程語言的知識。
我們都知道,語言嘛,當然是用來溝通交流、傳遞信息的,在人類的世界里,語言的種類非常多,像漢語、英語、日語、法語等等。
所以,我們不妨猜想一下,在電腦的世界里,會不會也是這樣的呢?答案是,的確如此。
為了使電腦能夠理解人的意圖,人類就必須將需解決的問題的思路、方法和手段通過電腦能夠理解的形式告訴電腦,使得電腦能夠根據人的指令一步一步去工作,完成某種特定的任務。
這種形式就是指編程語言。
在電腦領域,編程語言也很多,按發展歷程來劃分大致可以分為三大類:機器語言、彙編語言以及高級語言。從機器語言到高級語言,經歷了很長一段時間的發展。它們是發明者為了滿足現實的需要,不斷迭代發展到今天這個簡單、易於學習的高級語言的。
所以如今最常用的編程語言就是高級語言,而高級語言像比較常見的有C、C++、Java、Python等等,那麼我們可以用它們做什麼事呢?
前面說了,編程語言和我們熟悉的漢語一樣,也是用來溝通交流的,只是在溝通對象上有區別而已。
漢語是人與人之間的溝通,而編程語言則是人與電腦之間的溝通(簡稱人機交互),並且這種溝通是單向的,只有人可以主動來和電腦“交流”,而電腦是不會主動和我們說話的。
但是,在科技發展如此迅速的時代,或許未來真的會誕生智能電腦(人工智慧領域)也很有可能哦。(這個只是譚少額外的一點想法,說的可能不太準確,畢竟對這些不懂)。
在IT領域中,編程語言是程式員小哥哥和電腦打交道、指揮電腦幫其解決現實問題的工具。
對編程和編程語言有了一個大概的瞭解之後,下麵我們開始介紹Java。
三、Java介紹
那有的人可能就想問了,既然編程語言這麼多種,那為什麼偏偏就選擇Java呢?這其實就和很多人會選擇努力學好英語一樣,它們都比較火熱,而且都在各自領域起著重大作用。
Java被稱之為電腦界的“英語”,在編程語言排行榜中多年來一直名列前茅,並且連續多年排名第一,你說它火不火。說白了,學好它對你很有用,不管是靠它找工作以此謀生還是作為一個愛好,對你生活和工作的發展都很有幫助。
所以,想出國、想到外企工作的人就要學好英語,而想當程式員,拿高薪,迎娶白富美的你(男生),學好Java就很大程度上能幫你實現。
當然了,你也可以選擇學其他語言,不一定非得是Java,只是相對來說,學Java的人比較多些,學Java出身做程式員的叫做Java程式員。
可能有人想說,學的人這麼多,豈不是競爭也很大啊。
是的,競爭非常大,但是通往成功的路上並不擁擠,因為很多人由於堅持不下去而放棄了,堅持到最後的人很少,所以,要成功,那就做那個堅持到最後的人。
好了,廢話不多說了,正式開始介紹Java。
1、Java誕生及其發展簡史
1991年,SUN公司的Green項目,播下了Java語言的種子,當時Java還不叫Java,叫Oak。
1995年年初,Sun公司發佈了Java語言,開源免費給大家使用,短短幾個月內,Java受到了大家的廣泛喜愛,成為了互聯網上最熱門的寶貝。
但是,此時的Java還不能開發複雜的應用程式,要開發的話,必須要有一個強大的開發類庫。
因此,Sun公司在1996年發佈了JDK1.0。
有了這個東西,我們就能使用Java開發複雜的應用程式了。
在接下來幾年裡,Sun公司陸續又接著發佈了JDK1.1、JDK1.2,而1998年12月JDK1.2的發佈是Java歷史上最重要的一個版本,這次將Java分成了J2SE、J2EE、J2ME三個版本。
三個版本之間的關係如下:
J2SE是Java技術的基礎和核心,也是其他兩個版本的基礎,初學Java就是從J2SE學起的。
J2EE是Java技術中應用最廣泛的部分,主要用於企業級應用的開發。
J2ME則主要用於控制移動設備和信息家電等有限存儲的設備(實際開發中用的比較少,瞭解即可)。
這個版本的發佈,標志著Java吹響了向桌面、企業、移動三個領域進軍的號角。
2004年10月,Sun公司發佈了萬眾期待的JDK1.5,並將JDK1.5改名為JavaSE 5.0,同樣的,J2EE和J2ME也改名為JavaEE和JavaME。
2009年4月,Oracle宣佈收購Sun,從此Java成了Oracle公司的資產,而Sun公司也永遠的消失了,但Sun公司創造的傳奇是老一輩程式員心中的懷念。
……此處省略部分歷史
經過二十多年的發展,至今Java已經成為互聯網上最受歡迎的編程語言了。如今JDK的最新版本已經到JDK13了,並且還在不斷的發展中。
2、學好Java具體能夠做什麼呢?
可以做軟體,分為三類,電腦桌面應用和網頁版應用,還有移動客戶端程式。
但是現在有專門搞移動端的安卓開發和IOS開發了,所以Java主要應用於前兩個領域(用的最多的還是網頁版應用開發,也就是前面提到的企業級應用),不過學安卓開發也是要有Java基礎的,IOS開發就要學別的東西了。
3、Java語言的特性
- 簡單易用
- 面向對象
- 安全性高
- 支持多線程
- 跨平臺
簡單易用:任何事物都是相對的,Java相對C、C++來說要簡單易學,容易上手,但是這不代表學好也比它們容易。
跨平臺:我們稱能夠支持程式運行的硬體或軟體環境為平臺,各操作系統也是軟體,所以Windows、Linux、Mac都可以稱之為一個平臺。
Java程式不是直接運行在操作系統上,而是運行在一個叫做Java虛擬機(Java Virtual Machine,簡稱JVM)的虛擬電腦上。
Java針對不同的系統有不同的JVM實現,只要你的系統中安裝了對應的JVM,就能運行Java程式,而不依賴於操作系統。
簡單點說就是,你拿一個Java程式,在Windows、Linux、Mac上都能運行,只要它們各自都安裝了JVM。
JVM是Java語言的運行環境,也是Java 最具吸引力的特性之一。
JVM用於讀取並處理編譯過的與平臺無關的位元組碼文件,從而實現Java的可移植性。(位元組碼文件後面會講到)。
但是值得註意的是Java虛擬機是不跨平臺的,也就是說在Windows下得裝Windows版的JVM,在Linux下裝Linux版的JVM,在Mac下得裝Mac版的JVM。
文章首發於同名微信公眾號:譚少學Java
這是我在博客園的第一篇博客,以後的Java學習、更博之路還很漫長,感興趣的老鐵可以關註一波。