版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、前 言一、課程概述本課程主要包括以下內容:- Java編程語言句法- 應用于Java編程語言的面向對象的概念- 圖形用戶界面(GUI)編程- 創(chuàng)建Applet- 了解ServletJSP- JavaBean本課程首先討論了Java運行環(huán)境和Java編程語言句法,然后闡述了應用于Java編程語言的面向對象的概念;隨著課程的進展還將討論有關Java平臺的更先進的特性。本課程授課對象應具備運用Java 編程語言或其它語言進行基本語言設計的能力,它是“非程序員Java編程”(“Java Programming for NonProgrammers”,SL-110)課程的延續(xù)。二、課程目標完成本課程的學
2、習后,你應該能夠:- 描述語言的主要特性- 編譯并運行Java應用程序- 理解和使用在線超文本Java技術文件- 描述語言句法元素和構造- 理解面向對象的例子并使用該語言的面向對象特性- 理解并使用異常- 開發(fā)簡單的圖形用戶界面- 理解事件處理- 了解Swing的主要特性- 開發(fā)Java applets - 讀寫文件和其它數(shù)據(jù)源 三、如何做好準備?如何做好準備?在學習本課程前,你應該已經(jīng)完成了下列內容的學習:- 用C或C+創(chuàng)建編譯程序- 用文本編輯器創(chuàng)建并編輯文本文件(例如 EditPlus)- 使用World Wide Web(WWW)瀏覽器,如MicroSoft IE第0章 Java起步1
3、.1 編譯和執(zhí)行實例程序1、 下載和安裝Java軟件開發(fā)工具包(Java Software Development Kit,SDK)2、 按照下述規(guī)則,認真編寫和編譯Java程序: Java類或模塊的名字必須匹配它所在文件的名字。(例如System與system是不同的) 首先應避免使用開發(fā)環(huán)境,因為這意味著除了學習Java之外,還要學習其他額外的內容。3、 一個基本的Java應用程序象其它編程語言一樣,Java編程語言也被用來創(chuàng)建應用程序。一個共同的小應用程序范例是在屏幕上顯示字串“Hello World!”。下列代碼給出了這個Java應用程序。 源文件HelloWorldApp 1. /
4、2. / Sample HelloWorld application 3. / 4. public class HelloWorldApp 5. public static void main (String args) 6. System.out.println (Hello World!); 7. 8. 以上程序行是在你的屏幕上打印“Hello World!”所需的最少組件。 描述HelloWorldApp第1-3行程序中的1-3行是注釋行1 /2 / Sample HelloWorld application3 / 第4行第4行聲明類名為HelloWorldApp。類名(Classnam
5、e)是在源文件中指明的,它可在與源代碼相同的目錄上創(chuàng)建一個classnameclass文件。在本例題中,編譯器創(chuàng)建了一個稱為HelloWorldApp.class的文件, 它包含了公共類HelloWorldApp的編譯代碼。4 public class HelloWorldApp第5行第5行是程序執(zhí)行的起始點。Java技術解釋器必須發(fā)現(xiàn)這一嚴格定義的點,否則將拒絕運行程序。其它程序語言(特別是C和C+)也采用main ()聲明作為程序執(zhí)行的起始點。此聲明的不同部分將在本課程的后幾部分介紹。如果在程序的命令行中給出了任何自變量,它們將被傳遞給main()方法中被稱作args的String數(shù)組。在
6、本例題中,未使用自變量。5 public static void main (String args) - public方法main()可被任何程序訪問,包括Java技術解釋器。- static 是一個告知編譯器main()是用于類HelloWorldApp中的函數(shù)的關鍵字。為使main()在程序做其它事之前就開始運行,這一關鍵字是必要的。- void 表明main()不返回任何信息。這一點是重要的,因為Java編程語言要進行謹慎的類型檢查,包括檢查調用的方法確實返回了這些方法所聲明的類型。- String args 是一個String數(shù)組的聲明,它將包含位于類名之后的命令行中的自變量。 ja
7、va HelloWorldApp args0args1第6行第6行聲明如何使用類名、對象名和方法調用。它使用由System類的out成員引用的PrintStreamout對象的println()方法,將字串“Hello World!”打印到標準輸出上。6 System.out.println (“Hello World!”);在這個例子中,println()方法被輸入了一個字串自變量并將其寫在了標準輸出流上。第7-8行本程序的7-8行分別是方法main()和類HelloWorldApp的下括號。7 8 編譯并運行HelloWorldApp 編譯并運行HelloWorldApp- 編譯Hello
8、WorldApp.java javac HelloworldApp.java- 運行應用程序 java HelloWorldApp- 判定編譯和運行的共同錯誤編譯當你創(chuàng)建了HelloWorldApp.java源文件后,用下列程序行進行編譯: c:studentjavac HelloWorldApp.java如果編譯器未返回任何提示信息,新文件HelloWorldApp.class則被存儲在與源文件相同的目錄中,除非另有指定。運行為運行你的HelloWorldApp應用程序,需使用Java解釋器和位于bin目錄下的java: c:student java HelloWorldApp Hello
9、World!注意必須設置PATH環(huán)境變量以發(fā)現(xiàn)java和javac,確認它包括c:jdk1.2bin1.2 Java的最大優(yōu)點Java程序只需在任何一個系統(tǒng)上編譯一次,然后就可以在任何計算機上運行。1、 關于軟件的可移植性2、 J2EE、J2ME和J2SE J2EE企業(yè)版(大型平臺) J2ME微型版(小型平臺) J2SE標準版(中型平臺)1.3 Java虛擬機Java源代碼編譯后生成的目標代碼是字節(jié)碼(bytecode),他不是任何現(xiàn)有系統(tǒng)上的二進制指令代碼,而是一種中立結構的機器代碼,可以快速的解釋并運行在任何特定的計算機上。Java程序的執(zhí)行是通過一個稱為JVM(Java Virtual
10、Machine,Java虛擬機)的程序實現(xiàn)的。垃圾收集- 不再需要的分配存儲器應取消分配- 在其它語言中,取消分配是程序員的責任- Java編程語言提供了一種系統(tǒng)級線程以跟蹤存儲區(qū)分配- 垃圾收集- 可檢查和釋放不再需要的存儲器- 可自動完成上述工作- 可在JVM實現(xiàn)周期中,產生意想不到的變化許多編程語言都允許在程序運行時動態(tài)分配存儲器,分配存儲器的過程由于語言句法不同而有所變化,但總是要將指針返回到存儲區(qū)的起始位置 當分配存儲器不再需要時(存儲器指針已溢出范圍),程序或運行環(huán)境應取消分配存儲器。在C,C+ 或其它語言中,程序員負責取消分配存儲器。有時,這是一件很困難的事情。因為你并不總是事先
11、知道存儲器應在何時被釋放。當在系統(tǒng)中沒有能夠被分配的存儲器時,可導致程序癱瘓,這種程序被稱作具有存儲器漏洞。Java編程語言解除了程序員取消分配存儲器的責任,它可提供一種系統(tǒng)級線程以跟蹤每一存儲器的分配情況。在Java虛擬機的空閑周期,垃圾收集線程檢查并釋放那些可被釋放的存儲器。 垃圾收集在Java技術程序的生命周期中自動進行,它解除了取消分配存儲器的要求,并避免了存儲器漏洞。然而,垃圾收集可在JVM實現(xiàn)的周期中,產生意想不到的變化。Java的安全性Java源程序文件通過“編譯”,在你的感覺中,就好象是將它們從程序員編寫的文本文件格式轉換成了一組字節(jié)碼。字節(jié)碼被存儲在 .class文件中。構成
12、Java軟件程序的字節(jié)碼在運行時被加載、校驗并在解釋器中運行。當運行applets時,字節(jié)碼可被下載,然后由建于瀏覽器中的JVM進行解釋。解釋器具備兩種功能,一是執(zhí)行字節(jié)碼,二是對底層硬件做適當調用。在一些使用Java技術的運行環(huán)境中,部分校驗過的字節(jié)碼被編譯成原始機器碼并直接運行于硬件平臺。這就使Java軟件代碼能夠以C或C+接近的速度運行,只是在加載時, 因為要編譯成原始機器碼而略有延遲。1.4 Java平臺的組成1、 Java編程語言2、 Java虛擬機3、 伴隨系統(tǒng)的軟件庫4、 運行時環(huán)境1.5 Java語言Java語言是一種面向對象的編程語言。Java語言的特征:1、 線程2、 異常
13、處理3、 無用單元收集Java是:- 一種編程語言- 一種開發(fā)環(huán)境- 一種應用環(huán)境- 一種部署環(huán)境 Java編程語言的句法與C+的句法相似,語義則與Small Talk TM的語義相似。Java編程語言可被用來創(chuàng)建任何常規(guī)編程語言所能創(chuàng)建的應用程序。在World Wide Web(WWW)和能夠運行稱為applets程序的瀏覽器的有關介紹中,人們經(jīng)常提及Java編程語言。Applets是一種貯存于WWW服務器的用Java編程語言編寫的程序,它通常由瀏覽器下載到客戶系統(tǒng)中,并通過瀏覽器運行。Applets通常較小,以減少下載時間,它由超文本標識語言(HTML)的Web頁來調用。 Java app
14、lications是一種獨立的程序,它不需要任何Web瀏覽器來執(zhí)行。它們是一種典型的通用程序;可運行于任何具備Java運行環(huán)境的設備中。Java編程語言的主要目標提供一種解釋環(huán)境為- 提高開發(fā)速度- 代碼可移植性- 使用戶能運行不止一個活動線程- 當程序運行時,能動態(tài)支持程序改變- 提供更好的安全性 設計Java編程語言的主要目標是 提供一種易于編程的語言,從而 消除其它語言在諸如指針運算和存儲器管理方面影響健壯性的缺陷。 利用面向對象的概念使程序真正地成為可視化程序 為使代碼盡可能清晰合理、簡明流暢提供了一種方法1.6 Java庫1、 API:應用編程接口2、 Java庫可以分為兩大類: 捆
15、綁到JDK的核心庫 可選的JDK附加標準庫表1核心API及其功能Java運行時Java基礎類安全Java IDLJava BeanJava RMI表2某些可選的API及其功能Java CommunicationInfobusJavaHelpJavaMailJava MediaJNDI類和包介紹1. 什么是類和包?2. Java類庫中的幾個重要包 java.lang java.awt java.applet java.io java.util類是描述提供某種功能的模塊的一般術語。Java開發(fā)集(JDK)給出了一套標準的類(稱作類庫),這些類可執(zhí)行大部分所需的基本行為 不僅為編程
16、任務(例如,類可提供基本的數(shù)學函數(shù)、數(shù)組和字符串),而且為圖形和網(wǎng)絡。類庫被組織成許多包,每個包都包含幾個類。如下所列為一些重要的包:java.lang包含一些形成語言核心的類,如String、Math、Integer和Thread。java.awt包含了構成抽象窗口工具包(AWT)的類,這個包被用來構建和管理應用程序的圖形用戶界面。java.applet包含了可執(zhí)行applet特殊行為的類。 包含執(zhí)行與網(wǎng)絡相關的操作的類和處理接口及統(tǒng)一資源定位器(URLs)的類。 java.io包含處理I/O文件的類。java.util包含為任務設置的實用程序類,如隨機數(shù)發(fā)生、定義系統(tǒng)特性和
17、使用與日期日歷相關的函數(shù)。1.7 Java程序的三種執(zhí)行環(huán)境1、 單獨的程序2、 在瀏覽器中運行的程序3、 在WEB服務器中運行的程序1.8 一個圖形界面的Java程序把下面的程序輸入到一個稱為myframe.java的文件中import java.awt.*; class myframe extends Frame static int x=0,y=120; / x,y position to display message static int i=0; static int horizScroll=1; / 1-we are moving msg L-to-R Font fb = new
18、 Font(TimesRoman, Font.BOLD, 36); String msg=Java, Portable, Secure, Easy; Color color=Color.blue, Color.yellow, Color.green, Color.red;public void paint(Graphics g) / gets called by runtime library g.setFont( fb ); g.setColor( colori ); g.drawString(msgi,x,y); static public void main(String s) throws Exception myframe mf
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電話話筒細分市場深度研究報告
- 產包產品供應鏈分析
- 動力卷揚機產品供應鏈分析
- 噴灑農業(yè)殺蟲劑行業(yè)市場調研分析報告
- 空氣凈化器用過濾器項目運營指導方案
- 家用塑料制垃圾袋產業(yè)鏈招商引資的調研報告
- 船用內燃機市場分析及投資價值研究報告
- 便攜式計算機產品供應鏈分析
- 性欲抑制劑產品供應鏈分析
- 瓶用塑料塞市場分析及投資價值研究報告
- 傳統(tǒng)園林建筑構造--亭、廊、榭、舫75頁PPT課件
- 橋梁工程梁板的預制和安裝監(jiān)理實施細則
- 石拱橋加固施工方案
- 骨骼肌肉系統(tǒng)影像診斷(160頁)
- 鐵路信號基礎繼電器ppt課件
- 污水設計構筑物的計算
- 武當太極劍劍譜(49式)詳細介紹及招式名稱匯總
- 風量、溫度、噪聲測試記錄填寫范例
- 國家開放大學《管理英語1》邊學邊練參考答案
- (完整版)裝飾裝修工程監(jiān)理細則(詳解)最新(精華版)
- 電焊中級工(四級)職業(yè)技能鑒定考試題庫
評論
0/150
提交評論