版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、項目一 Java 語言概述 1.1 Java 的起源 1.2 程序設計思想的發(fā)展 1.3 Java的三大開發(fā)體系23 七月 2022123 七月 20221.1 Java 的起源 目前Java語言在全世界是使用最為廣泛的計算機編程語言之一。它容易學習而且非常的好用,如果你學習過其它的編程語言,例如C+,你就會覺得C+和 Java非常的相似,主要是因為Java和C+中許多基礎的語法一樣,但是我們知道Java和C+是兩種不同的語言,Java只需理解一些最基本的概念,就能夠編寫出各種的應用程序。Java用一種更加容易理解的方式去實現,所以Java相對于C+是簡單的。223 七月 20221.1.1
2、Java的由來Java 總是和C+聯(lián)系在一起,而C+ 則是從C語言派生而來的,所以Java 語言繼承了這兩種語言的大部分特性。Java 的語法是從C繼承的,Java 許多面向對象的特性受到C+ 的影響。323 七月 20221.1.2 Java的產生 Java 是由James Gosling,Patrick Naughton,Chris Warth,Ed Frank 和Mike Sheridan于1991 年在Sun Microsystems 公司設計出來的。開發(fā)第一個版本花了18個月。該語言開始名叫“Oak ”,于1995年更名為“Java ”。從1992 的秋天Oak 問世到1995的春天
3、公開發(fā)布Java 語言,許多人對Java 的設計和改進做出了貢獻。Bill Joy,Arthur van Hoff,Jonathan Payne, Frank Yellin 和Tim Lindholm 是主要的貢獻者,正是他們的貢獻使最初原型得以成熟。423 七月 20221.1.3 Java對Internet為什么重要Internet使Java成為網上最流行的編程語言,同時Java對Internet的影響也意義深遠。在Java 產生以前,當前賽百空間有一半的對象實體無法進入網絡世界,是Java為它們打開了便利之門,而且在這個過程中定義了一種全新的程序形式:applet( 小應用程序)。523
4、 七月 2022(1)Java 小應用程序和應用程序Java 可用來生成兩類程序:應用程序(applications)和Java applet(小應用程序。應用程序是可以在你的計算機的操作系統(tǒng)中運行的程序。小應用程序是可以在Internet 中傳輸并在兼容Java的Web瀏覽器中運行的應用程序。623 七月 2022(2)安全性當使用一個兼容Java的Web瀏覽器時,你可以安全地下載Java小應用程序,不必擔心病毒的感染或惡意的企圖。Java實現這種保護功能的方式是,將Java 程序限制在Java運行環(huán)境中,不允許它訪問計算機的其他部分,后面將介紹這個過程是如何實現的。下載小應用程序并能確保它
5、對客戶機的安全性不會造成危害是Java的一個最重要的方面。723 七月 2022(3)可移植性正如前面所討論的,許多類型的計算機和操作系統(tǒng)都連接到Internet上。要使連接到Internet上的各種各樣的平臺都能動態(tài)下載同一個程序,就需要有能夠生成可移植性執(zhí)行代碼的方法。很快你將會看到,有助于保證安全性的機制同樣也有助于建立可移植性。實際上,Java對這兩個問題的解決方案是優(yōu)美的也是高效的。823 七月 20221.1.4 Java的魔力:字節(jié)碼字節(jié)碼是一套設計用來在Java運行時系統(tǒng)下執(zhí)行的高度優(yōu)化的指令集,該Java運行時系統(tǒng)稱為Java虛擬機(JavaVirtual Machine,J
6、VM)。在其標準形式下,JVM就是一個字節(jié)碼解釋器。然而,正是通過JVM運行Java 程序才有助于解決在Internet 上下載程序的主要問題。這就是Java 輸出字節(jié)碼的原因。923 七月 2022將Java 程序翻譯成字節(jié)碼,有助于它更容易地在一個大范圍的環(huán)境下運行程序。原因非常直接:只要在各種平臺上都實現Java 虛擬機就可以了。在一個給定的系統(tǒng)中,只要系統(tǒng)運行包存在,任何Java 程序就可以在該系統(tǒng)上運行。記?。罕M管不同平臺的Java 虛擬機的細節(jié)有所不同,但它們都解釋同樣的Java 字節(jié)碼。1023 七月 20221.1.5 Java常用語 簡單(Simple) 安全(Secure)
7、 可移植(Portable) 面向對象(Object-oriented) 健壯(Robust) 11 多線程(Multithreaded) 體系結構中立(Architecture-neutral) 解釋執(zhí)行(Interpreted) 高性能(High performance) 分布式(Distributed) 動態(tài)(Dynamic) 23 七月 20221223 七月 20221.2 程序設計思想的發(fā)展1.2.1 面向對象編程Java的核心是面向對象編程。事實上,所有的Java程序都是面向對象的,你別無選擇。這一點與C+不同,因為在那里你可以選擇是否面向對象編程。 面向對象編程與Java密不可
8、分,因此,在你編寫哪怕是最簡單的Java程序以前,也必須理解它的基本原則。因此,先從面向對象編程的概念講起。1323 七月 2022(1)兩種范型我們知道,所有的計算機程序都由兩類元素組成:代碼和數據。此外,從概念上講,程序還可以以它的代碼或是數據為核心進行組織編寫。1423 七月 2022這兩種范型決定程序的構建方法。第一種方法被稱為面向過程的模型(process-oriented model),用它編寫的程序都具有線性執(zhí)行的特點。面向過程的模型可認為是代碼作用于數據,像C這樣的過程式語言采用這個模型是相當成功的。然而,當程序變得更大并且更復雜時,就會出現問題。1523 七月 2022第二種
9、方式,也就是面向對象的編程(object-orientedprogramming)。面向對象的編程圍繞它的數據(即對象)和為這個數據嚴格定義的接口來組織程序。面向對象的程序實際上是用數據控制對代碼的訪問。下面你將看到,將控制的實體變換為數據,可使程序在組織結構上從若干方面受益。1623 七月 2022(2)抽象面向對象編程的一個實質性的要素是抽象。人們通過抽象(abstraction)處理復雜性。例如,人們不會把一輛汽車想象成由幾萬個互相獨立的部分所組成的一套裝置,而是把汽車想成一個具有自己獨特行為的對象。1723 七月 2022面向對象的概念是Java 的核心,對程序員來講,重要的是要理解這
10、些概念怎么轉化為程序。你將會發(fā)現,在任何主要的軟件工程項目中,軟件都不可避免地要經歷概念提出、成長、衰老這樣一個生命周期,而面向對象的程序設計,可以使軟件在生命周期的每一個階段都處變不驚,有足夠的應變能力。1823 七月 2022(1)封裝封裝(Encapsulation)是將代碼及其處理的數據綁定在一起的一種編程機制,該機制保證了程序和數據都不受外部干擾且不被誤用。191.2.2 面向對象編程的3個原則23 七月 2022理解封裝性的一個方法就是把它想成一個黑匣子,它可以阻止在外部定義的代碼隨意訪問內部代碼和數據。對黑匣子內代碼和數據的訪問通過一個適當定義的接口嚴格控制。2023 七月 20
11、22Java封裝的基本單元是類。一個類(class)定義了將被一個對象集共享的結構和行為(數據和代碼)。一個給定類的每個對象都包含這個類定義的行為和結構,好像它們是從同一個類的模子中鑄造出來似的。所以,類是一種邏輯結構,而對象是真正存在的物理實體。2123 七月 2022既然類的目的是封裝復雜性,在類的內部就應該有隱藏實現復雜性機制。類中的每個方法或變量都可以被標記為私有(private)或公共(public)。類的公共接口代表類的外部用戶需要知道或可以知道的每件事情;私有方法和數據僅能被一個類的成員代碼所訪問,其他任何不是類的成員的代碼都不能訪問私有的方法或變量。2223 七月 2022(2
12、)繼承繼承(Inheritance)是一個對象獲得另一個對象的屬性的過程。繼承很重要,因為它支持了按層分類的概念。使用了繼承,一個對象就只需定義使它在所屬類中獨一無二的屬性即可,因為它可以從它的父類那兒繼承所有的通用屬性。所以,可以這樣說,正是繼承機制使一個對象成為一個更具通用類的一個特定實例成為可能。2323 七月 2022繼承性與封裝性相互作用。如果一個給定的類封裝了一些屬性,那么它的任何子類將具有同樣的屬性,而且還添加了子類自己特有的屬性。這是面向對象的程序在復雜性上呈線性而非幾何性增長的一個關鍵概念。新的子類繼承它的所有祖先的所有屬性。它不與系統(tǒng)中其余的多數代碼產生無法預料的相互作用。
13、2423 七月 2022(3)多態(tài)性多態(tài)性(Polymorphism,來自于希臘語,表示“多種形態(tài)”)是允許一個接口被多個同類動作使用的特性,具體使用哪個動作與應用場合有關。251.2.3 多態(tài)性、封裝性與繼承性相互作用如果用得當,在由多態(tài)性、封裝性和繼承性共同組成的編程環(huán)境中可以寫出比面向過程模型環(huán)境更健壯、擴展性更好的程序。23 七月 202226所有的Java程序都是面向對象的?;蛘?,更精確地說,每個Java程序都具有封裝性、繼承性及多態(tài)性。Java提供的許多特性是它的內置類庫的一部分,這個庫使封裝性、繼承性及多態(tài)性得到更廣泛應用。23 七月 2022271.3 Java的三大開發(fā)體系Java發(fā)展到今天,已從編程語言發(fā)展成為全球第一大通用開發(fā)平臺。Java技術已被計算機行業(yè)主要公司所采納。1999年,Sun公司推出了以Java2平臺為核心的J2SE、J2EE和J2ME三大平臺。隨著三大平臺的迅速推進,全球形成了一股巨大的Java應用浪潮。23 七月 2022281Java 2 Platform, Standard Edition(J2SE)2Java 2 Platform, Enterprise Edition(J2EE)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 貴州城市職業(yè)學院《房地產策劃與運營》2023-2024學年第一學期期末試卷
- 淫羊藿培育項目可行性研究報告-淫羊藿市場需求持續(xù)增大
- 貴陽人文科技學院《聚合物改性原理及方法》2023-2024學年第一學期期末試卷
- 廣州中醫(yī)藥大學《英語教師核心素養(yǎng)解讀》2023-2024學年第一學期期末試卷
- 2025山東省安全員-B證考試題庫附答案
- 2025年云南省安全員《A證》考試題庫及答案
- 廣州應用科技學院《建筑給排水與消防》2023-2024學年第一學期期末試卷
- 廣州現代信息工程職業(yè)技術學院《增材制造技術》2023-2024學年第一學期期末試卷
- 2025黑龍江省建筑安全員C證(專職安全員)考試題庫
- 2025年河南省建筑安全員-C證(專職安全員)考試題庫
- 7人英語短劇劇本(5篇)
- 員工滿意度中英文對照外文翻譯文獻
- 國有企業(yè)(投資類)戰(zhàn)略規(guī)劃管理暫行辦法模版
- GB/T 14211-2019機械密封試驗方法
- 人教版七年級上冊數學第一章有理數計算題訓練(無答案)
- 拱壩講義(河海大學水工建筑物課件)
- 新能源發(fā)電技術教學大綱
- 三進兩聯(lián)一交友先進個人 范文(5篇)
- 微生物在農業(yè)上的應用技術課件
- 渦旋壓縮機分析
- 縣級危重孕產婦救治中心評審標準(產科)
評論
0/150
提交評論