版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、計算機學(xué)院基礎(chǔ)教學(xué)中心潘肖煜 pxy_68Java語言程序設(shè)計Introduction(一) 為何要學(xué)習(xí)程序設(shè)計 計算機能夠“聽懂”的語言借助于計算機語言,人要告知機器,你想讓他做什么如何做/怎么做通過學(xué)習(xí),提高分析問題和解決問題的能力Introduction 二)Java是一種計算機語言特點面向?qū)ο?,更適合網(wǎng)絡(luò)編程簡單,跨平臺學(xué)習(xí)Java語言基本要素常量,變量表達式,語句程序結(jié)構(gòu)And more運用Java語言編寫簡單應(yīng)用程序理解過程和對象的編程認(rèn)識Java的高級特性Introduction (三)課程評價教學(xué)網(wǎng)站:00 用戶名:學(xué)號;初始密碼:123456實驗網(wǎng)站:00 用戶名和初始密碼均
2、為學(xué)號考試課,100分制,組成:理論50%其他:期末實驗考試25%+平時成績25%理論:期末網(wǎng)考,計算機自動閱卷,及格線為百分制成績 =55其他: 期末實驗考試:考試系統(tǒng)自動出題并批改,25分,及格分15分平時成績:平時上機實驗+課后作業(yè)+到課率(或課堂小測試)理論考或?qū)嶒灴加幸豁棽患案?總評即不及格Java 概述1.1 程序設(shè)計語言 1.2 面向?qū)ο蟮某绦蛟O(shè)計語言-Java1.3 Java的開發(fā)和運行環(huán)境1.4 開發(fā)和運行Java程序的步驟1.5 Eclipse程序設(shè)計語言經(jīng)歷:1.1 程序設(shè)計語言機器語言匯編語言高級語言結(jié)構(gòu)化程序設(shè)計面向?qū)ο蟪绦蛟O(shè)計高級語言:機器語言: 機器語言的源程序由
3、一條條指令(二進制代碼)組成。以下是一個機器語言程序段: 00111110 00011010 11111110 00100100 11010011 00101111 01110110特點:能被計算機直接識別和執(zhí)行,執(zhí)行速度快;但通篇是0和1,可讀性太差,編程不方便,指令難記,容易出錯且不易修改。 匯編語言: 匯編語言采用記憶符號來代替機器語言的二進制編碼,如用記憶符ADD代替加法指令,OUT代替輸出指令等。前述的機器語言程序段,改用匯編語言可寫成: LD A,26 ;把26送到寄存器A中ADD A,36 ;加上36 OUT (48),A ;輸出到48號端口 HALT ;暫停 特點:編程較為方便
4、。仍脫離不開具體機器的指令系統(tǒng),所用的指令符號與機器指令基本上是一一對應(yīng)的,編程效率不高,因此一般人很難使用。高級語言: 接近自然語言和數(shù)學(xué)表達,且不依賴于特定的機器通用性好。以下是以BASIC語言編寫的簡單程序例: LET A26+36 PRINT A END面向過程的高級語言:如BASIC語言、 C語言等用計算機能理解的邏輯表達問題的具體解決過程分解問題步驟設(shè)計每一步驟的實現(xiàn)依次執(zhí)行這些步驟程序的重用性差 高級語言:面向?qū)ο蟮母呒壵Z言:如Visual Basic、 C+、 Java更好地描述客觀事物及相互聯(lián)系。從對象出發(fā)解決問題。分解問題為“對象”設(shè)計每個對象的“屬性”和“行為”建立對象之
5、間的聯(lián)系更接近人的思維程序的重用性好面向過程:具體解決問題的步驟開始游戲黑子先走繪制畫面判斷輸贏輪到白子,繪制畫面判斷輸贏返回步驟2-7Example: 五子棋而面向?qū)ο螅阂怨δ軄韯澐謫栴}玩家對象:負(fù)責(zé)接受用戶輸入,并告知棋盤對象棋子布局的變化棋盤對象:接收到了棋子的變化就要負(fù)責(zé)在屏幕上面顯示出這種變化裁判對象:利用規(guī)則來對棋局進行判定如果規(guī)則改變呢?翻譯計算機語言程序 計算機只能處理二進制數(shù)據(jù),所以只能執(zhí)行機器語言程序,那么 高級語言程序被計算機執(zhí)行前,要有一個“翻譯”過程將高級語言編寫的程序(源程序)翻譯成機器語言程序(目標(biāo)程序)。語言翻譯程序也是一種軟件,人們稱之為“程序的程序” 翻譯方
6、法一般采用兩種一是編譯方式采用的翻譯程序叫做編譯程序,將高級語言編寫的源程序編譯機器語言程序(即擴展名為.exe的可執(zhí)行文件) 二是解釋方式采用的翻譯程序叫做解釋程序,在高級語言環(huán)境中通過解釋程序逐條解釋逐條運行。1.2 面向?qū)ο蟮某绦蛟O(shè)計語言-JavaJava的發(fā)展歷史1990年,Sun公司為了發(fā)展消費類產(chǎn)品(面包機、PDA等),用C+編寫嵌入式軟件,使產(chǎn)品更具備人工智能。C+常使系統(tǒng)失效,開發(fā)一種新語言O(shè)ak,語法和C+類似,更為簡單,可移植,平臺獨立。1994年,研發(fā)小組發(fā)覺Oak 很適合Internet上的程序開發(fā),完善后重新命名為Java,并開發(fā)了與之配合使用的瀏覽器HotjavaJ
7、ava的特點簡單性 Java從C+語言演變而來,保留了C+的許多優(yōu)點,去除了C+ 易發(fā)生錯誤的功能。如去掉了頭文件、指針變量、結(jié)構(gòu)、運算符重載、多重繼承等復(fù)雜特性。這樣就減少了編程的復(fù)雜性 面向?qū)ο?面向?qū)ο蠹夹g(shù)是現(xiàn)代軟件工業(yè)的一次革新,提高了軟件的模塊化程度和重復(fù)使用率,縮短開發(fā)時間,降低開發(fā)成本安全性 Java 是網(wǎng)絡(luò)程序設(shè)計語言,提供了許多安全機制來保證其使用上的安全性。Java的特點平臺獨立 指程序的運行不受操作系統(tǒng)平臺的限制。多線程網(wǎng)絡(luò)功能執(zhí)行效率 Java的字節(jié)碼需要經(jīng)過Java虛擬機解釋成機器碼才能執(zhí)行,原本速度較慢.隨著JVM技術(shù)的進步,其執(zhí)行速度直逼C和C+。Java源程序.
8、java編譯器字節(jié)碼文件.classWindows操作環(huán)境Unix操作環(huán)境解釋器解釋器解釋器Mac操作環(huán)境JVMJava與C/C+的主要區(qū)別跨平臺 C/C+語言編譯為機器碼;Java語言編譯為字節(jié)碼,通過JVM編譯為機器碼。廢除指針C/C+語言有指針類型;Java語言沒有指針類型繼承C+允許多繼承;Java語言僅允許單繼承速度C/C+運行速度快;Java運行速度較慢1.3 Java的開發(fā)和運行環(huán)境 JDK是Sun公司推出的Java開發(fā)工具包,包括Java類庫、 Java編譯器、 Java解釋器、 Java運行環(huán)境和Java命令行工具。JDK主要有3種版本J2SE:Java標(biāo)準(zhǔn)版或Java標(biāo)準(zhǔn)平
9、臺。可以開發(fā)Java桌面應(yīng)用程序和低端服務(wù)器應(yīng)用程序,也可開發(fā)Java Applet程序J2EE:Java企業(yè)版或Java企業(yè)平臺,它包含J2SE平臺,并增加了附加類庫,支持目錄管理,交易管理等功能。J2ME:Java微型版或Java小型平臺,用于嵌入式的消費產(chǎn)品中,如移動電話,掌上電腦等JDK的安裝和設(shè)置可以從http:/網(wǎng)站上免費下載,然后安裝安裝完成后,對Path和Classpath這兩個環(huán)境變量進行設(shè)置。然后就可以用命令行方式(MS-DOS環(huán)境)編譯和運行Java程序了。 javac(編譯器);java(解釋器)Java集成開發(fā)環(huán)境(IDE)有: JDK只提供了java程序的命令行編譯
10、和運行方式,并沒有提供程序的編輯環(huán)境(可以采用記事本),更沒有提供可視化的集成開發(fā)環(huán)境(IDE),故使用不方便。目前比較流行的java集成開發(fā)環(huán)境(IDE)有JBuilder 、Visual Age for Jave、Visual J+、Eclipse、JCreator等。1.4 開發(fā)和運行Java程序的步驟Java程序分為Java應(yīng)用程序(Java Application)和Java小應(yīng)用程序(Java Applet)兩種。Java Application 必須通過Java解釋器(java.exe)來解釋執(zhí)行其字節(jié)碼文件。而 Java Applet必須通過支持Java標(biāo)準(zhǔn)的瀏覽器來解釋執(zhí)行(
11、 Java Applet可以直接嵌入到頁面中,大大提高Web頁面的交互能力和動態(tài)執(zhí)行能力。)源文件:文件名.javaJava編譯器:javac字節(jié)碼文件由瀏覽器執(zhí)行由Java解釋器執(zhí)行編譯生存Java ApplicationJava AppletJava Application的程序結(jié)構(gòu)修飾符 Class 用戶自定義的類名 /定義類,修飾符可以是public、private等 public static void main(String args ) 方法體 一個Java源文件是由若干個類組成,最簡單的只有一個類 源文件的命名規(guī)則:如果源文件中有多個類,那么只有一個類是public類,源文件的
12、名稱必須與這個類的名字完全相同 一個Java應(yīng)用程序必須有一個類含有main方法,稱為應(yīng)用程序的主類,且main方法必須被說明為public static void 。程序從main方法開始執(zhí)行Java Application Example public class Hello public static void main(String args ) System.out.println(Hello Java!); Java語言是區(qū)分大小寫的一個程序必須有至少一個輸出!Java中使用print方法輸出信息System是Java類庫中的一個類,out是System類中的一個對象,printl
13、n(或print)是out對象的一個方法 System.out.println(); /其中的“.”表示“屬于”print方法輸出之后不換行;println方法輸出之后自動換行 編輯和運行Java程序利用編輯器(記事本)編寫Java源程序,保存為Hello.java“開始” “運行”,輸入“cmd”命令,進入命令行窗口進入Java源程序所在文件夾運行編譯器(javac)得到字節(jié)碼文件(Hello.class): javac Hello.class在虛擬機下(java)運行: java HelloJava的命令行輸入public class Hello public static void ma
14、in(String args ) System.out.println(args0+args1); 其中,args(arguments)命令行參數(shù),args0和args1分別用來接受命令行輸入的第一個和第二個參數(shù)編譯的過程一樣,在虛擬機下(java)運行: java Hello Welcome Java! ”Welcome”傳遞給args0, “Java!”傳遞給args1Java Application Examplepublic class People int height; String ear; void speak(String s) System.out.println(s);
15、class Apublic static void main(String arg) People zhubajie; zhubajie=new People(); zhubajie.height=170; zhubajie.ear=兩只大耳朵; System.out.println(身高:+zhubajie.height); System.out.println(zhubajie.ear);zhubajie.speak(師傅,我們別去西天了,改去月宮吧);EclipseEclipse目前最好的Java開發(fā)Http:/下載Eclipse最新版本下載語言包(Language Park),含中文版操作步驟:打開Eclipse文件新建項目(Project)新建項目對話框Java項目輸入“項目名”:Hello,點擊“完成”在左側(cè)的“導(dǎo)航器”上, 在“Hello”點擊右鍵“新建”“類”,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣東松山職業(yè)技術(shù)學(xué)院《綠色制造與可持續(xù)發(fā)展》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣東水利電力職業(yè)技術(shù)學(xué)院《工程項目管理》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣東汕頭幼兒師范高等??茖W(xué)校《中國古代文論》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣東嶺南職業(yè)技術(shù)學(xué)院《行業(yè)分析》2023-2024學(xué)年第一學(xué)期期末試卷
- 【名師一號】2020-2021學(xué)年高中英語北師大版必修4-雙基限時練19
- 三年級英語上冊單詞
- 《肩關(guān)節(jié)解剖m》課件
- 語文書六年級上冊人教版
- 【全程復(fù)習(xí)方略】2021年高中化學(xué)選修三單元質(zhì)量評估(二)第2章-分子結(jié)構(gòu)與性質(zhì)-
- 【2021屆備考】2020全國名校數(shù)學(xué)試題分類解析匯編(12月第一期):B9函數(shù)與方程
- 物理八年級上冊凸透鏡成像的規(guī)律(課件)
- 2024-2025學(xué)年新教材高中地理 第3單元 區(qū)域聯(lián)系與區(qū)域發(fā)展 第1節(jié) 大都市輻射對區(qū)域發(fā)展的影響-以上海市為例說課稿 魯教版選擇性必修2
- 物業(yè)充電樁合作加盟協(xié)議書范文
- 機械工安全操作規(guī)程有哪些(11篇)
- 2024年執(zhí)業(yè)醫(yī)師考試-中醫(yī)執(zhí)業(yè)醫(yī)師考試近5年真題集錦(頻考類試題)帶答案
- 2024-2030年中國真空滅弧室行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析報告
- 全國計算機一級考試題庫(附答案)
- 【飛科電器公司基于杜邦分析法的財務(wù)分析案例(7700字論文)】
- 廣東省深圳市(2024年-2025年小學(xué)四年級語文)統(tǒng)編版期末考試(上學(xué)期)試卷及答案
- 兒童呼吸道合胞病毒感染臨床診治試題
- 2021-2022學(xué)年廣東省廣州市花都區(qū)六年級(上)期末英語試卷
評論
0/150
提交評論