版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、Java程序設(shè)計(jì)授課教案授 課 人:授課班級:電子商務(wù)專業(yè)第一章 Java語言簡介教學(xué)目的要求 了解Java的基本特點(diǎn)和用途 掌握如何下載Java SDK軟件包 了解設(shè)置Java程序的開發(fā)環(huán)境SDK 如何運(yùn)行Java程序 了解Java的概貌主要內(nèi)容 Java語言的發(fā)展歷程; Java語言的特點(diǎn); Java語言的開發(fā)工具; Java應(yīng)用程序和小程序; Java程序的注釋方法; 寫Java程序的風(fēng)格規(guī)范。重點(diǎn)內(nèi)容 Java語言的特點(diǎn); Java語言的開發(fā)工具; Java應(yīng)用程序和小程序;難點(diǎn)內(nèi)容無課時分配1課時教學(xué)方法講授法、演示法、對比法講授內(nèi)容提要1.1 Java語言的發(fā)展簡介1991年Sun
2、 Mircosystem 公司成立了一個Green項(xiàng)目開發(fā)小組,Jame Gosling 為組長;設(shè)計(jì)Java采用虛擬機(jī)代碼(Virtual Machine Code),即.class文件,它通過解釋器運(yùn)行 ;1995年5月Sun Mircosystem 公司對外正式發(fā)布Java1.0; Java2 用途:適用于各種應(yīng)用開發(fā),尤其是網(wǎng)絡(luò)應(yīng)用,網(wǎng)絡(luò)服務(wù)和嵌入式系統(tǒng) 。1.2 Java語言的特點(diǎn)1簡單性2面向?qū)ο?網(wǎng)絡(luò)適用性4健壯性5安全性6平臺無關(guān)性7可移植性8解釋型9高性能10多線程11動態(tài)性12豐富的類庫13嵌入瀏覽器運(yùn)行1.3 Java類庫的概念1.4 網(wǎng)絡(luò)瀏覽器1.5 Java開發(fā)工具N
3、etBeans: 這個集成環(huán)境可以方便地進(jìn)行程序的編輯、編譯、生成和運(yùn)行。J2sdk : http:/ 免費(fèi)下載 ;Visual J+ 6.0 / 8.0: VJ+還吸收了VB集成開發(fā)環(huán)境IDE的特征,是一個強(qiáng)有力的Java程序開發(fā)工具。Jcreator Eclipse (MyEclipse)等1.6 Java程序的分類基于控制臺的應(yīng)用程序;基于瀏覽器運(yùn)行的小程序applet。小程序與應(yīng)用程序的區(qū)別是:小程序必須依賴一個HTML文件和支持Java的網(wǎng)絡(luò)瀏覽器。老師演示小程序和applet程序應(yīng)用程序舉例 ( 程序1-1 ):public class hello publ
4、ic static void main (String args ) System.out.println (Hello Java !); 小程序舉例 ( 程序1-2 ):import java.awt.Graphics; / 注意該行的含義import java.applet.Applet;public class sayhello extends Applet public void paint (Graphics g ) g.drawString (Hello Java !,35,30); 小程序?qū)?yīng)的HTML文件: 1.7 對Java程序的解釋1.8 編寫Java程序的風(fēng)格要求課堂練習(xí)
5、:請編寫一個應(yīng)用程序輸出你自己的學(xué)號和姓名課外練習(xí)(作業(yè)):下載并安裝J2SDK;設(shè)置系統(tǒng)環(huán)境變量下載并安裝MyEclipse熟悉MyEclipse的開發(fā)環(huán)境第2章 數(shù)據(jù)類型、運(yùn)算符和表達(dá)式教學(xué)目的要求 掌握字符常量和符號表示的常量的概念和應(yīng)用 掌握整形、浮點(diǎn)型、字符型和布爾型變量的概念和應(yīng)用 掌握數(shù)據(jù)的概念 理解參數(shù)傳遞方式 學(xué)會邏輯運(yùn)算符、算術(shù)運(yùn)算符和位運(yùn)算符的使用方法主要內(nèi)容 常量:包括字面常量和符號表示的常量; 變量:整形、浮點(diǎn)型、字符型和布爾型; 數(shù)組:Java的數(shù)組屬于類類型; 參數(shù)傳遞方式; 運(yùn)算符:包括邏輯運(yùn)算符、算術(shù)運(yùn)算符和位運(yùn)算符等; 重點(diǎn)內(nèi)容 整形、浮點(diǎn)型、字符型和布爾型
6、變量的概念和應(yīng)用; 符常量和符號表示的常量的概念和應(yīng)用難點(diǎn)內(nèi)容 參數(shù)傳遞方式課時分配2課時教學(xué)方法講授法、演示法、對比法、實(shí)驗(yàn)驗(yàn)證法講授內(nèi)容提要2.1 常量整形常量:采用八進(jìn)制、十進(jìn)制、十六進(jìn)制表示,但不能采用二進(jìn)制表示,和C/C+中的一樣。 浮點(diǎn)常量:采用十進(jìn)制或科學(xué)記數(shù)法表示。在缺省情況下一個浮點(diǎn)數(shù)是double型。布爾常量:true和false,它們不是數(shù),不能進(jìn)行算術(shù)運(yùn)算。字符常量:與C/C+中的表示類似 。字符串常量:Java中字符串常量是對象 。2.2 變量變量的命名原則是:以字母(az和 AZ)、下劃線(_)和$符號開頭的, 由字母、數(shù)字(09)、下劃線和$構(gòu)成的一個符號序列。例
7、如,a,_a,NameOfStudent,$10均是合法變量名,而-a和9a是非法變量名。關(guān)鍵字不能用作變量名 ( 見表2-1 )注意:Java對變量是區(qū)分大小寫 .2.2.1 整形類型的變量字節(jié)(byte)型,8個位。 短整形(short),占16個位。整形 ( int ),占32個位。長整形 ( long int ),占64個位。Java中的整形最值均有符號。例如程序2-1測試最值:public class Test_Int / 程序2-1 測試整形變量的最值 public static void main(String args)System.out.println(Byte.MAX_V
8、ALUE ); System.out.println(Byte.MIN_VALUE ); System.out.println(Short.MAX_VALUE );System.out.println(Short.MIN_VALUE );System.out.println(Integer.MAX_VALUE ); System.out.println(Integer.MIN_VALUE ); System.out.println(Long.MAX_VALUE ); System.out.println(Long.MIN_VALUE); 注意: byte、short、int、long是原子類型
9、,而Byte、Short、Integer和Long分別是四種原子類型對應(yīng)的類類型。 2.2.2 字符類型變量Java字符量的長度為16個位,表示范圍是從u0000 到 uffff 即從0 到 65535;Character是char類型對應(yīng)的類類型 ;最大值 Character.MAX_VALUE ;最小值 Character.MIN_VALUE ;2.2.3 浮點(diǎn)類型變量分類:float和double。Float 、Double 是對應(yīng)的類類型 ;Float.MAX_VALUE、Float.MIN_VALUE是最值。Float.POSITIVE_INFINITY 和 Float.NEGATI
10、VE_INFINITY是正/負(fù)無限大 。2.2.4 布爾類型變量boolean變量取值:true和false ;true和false不能轉(zhuǎn)換成任何數(shù)值表示,true不是1,false也不是0 。2.2.5 原子類型變量的生存空間一個變量的生存空間是由兩個大括號決定的 范圍。下列寫法在C/C+中是正確的,但在Java中是錯誤的 ( 注意 )。int x=1;int x=0; / 錯誤2.3 變量賦值問題如果類中定義的原子類型變量,未給出初值,那么它們將有缺省值 :byte、short、int 和long變量的缺省值是0;char 、float、double和boolean變量的缺省值分別是u0、
11、0.0f、0.0d和false。 方法內(nèi)定義的局部變量,應(yīng)當(dāng)對其賦值,否則無法通過編譯 。例如:/ 程序2-4class Test / 定義一個類int Value; / 類中的變量未賦值,缺省就是0public class Test_Varpublic static void main(String args) int x=100; / 必須賦值,否則無法通過編譯Test obj=new Test( );/ 對象賦值System.out.println( obj.Value + +x); 2.4 數(shù)組Java數(shù)組是系統(tǒng)定義類Array 的子類;數(shù)組的分類同C/C+:一維和多維。2.4.1 一
12、維數(shù)組定義數(shù)組的格式 :int a ; 或 int a ;其值是null ;在定義數(shù)組時不能指定大小。a僅是一個引用,代表一個數(shù)組名,但沒有對應(yīng)的空間。產(chǎn)生數(shù)組空間的方法有兩種 : 在定義時直接賦值:int a =1,2,3; 通過new分配空間:int a =new int10;public class Test_Arraypublic static void main(String args)int a =1,2,3, b ; b= a ; for(int i=0;i3;i+) b i +;for(int i=0;i3;i+) System.out.println(ai); public
13、class Test_Arraypublic static void main(String args)int a =1,2,3, b ;b = new int6; System.out.println( “b數(shù)組長度 = ” + b.length);for(int i=0;ishort-int-long-float-double。這種轉(zhuǎn)換規(guī)則也適應(yīng)于賦值語句,當(dāng)賦值符左右兩側(cè)變量類型不一致時,只要轉(zhuǎn)換過程中不丟失數(shù)據(jù),便進(jìn)行自動轉(zhuǎn)換。 class number int x;public class relationalOperator public static void main(Stri
14、ng args )number n1,n2;n1=new number( ); n2=new number( ); n1.x=1; n2.x=1;if(n1.x=n2.x) System.out.println(對象的數(shù)據(jù)成員x相等!); if(n1=n2) System.out.println(n1和n2是一個對象!);else System.out.println(n1和n2不是一個對象!);2.6.2 關(guān)系運(yùn)算符關(guān)系運(yùn)算符不能同其它類型的變量一同 參與運(yùn)算,例如假設(shè)a,b,c是三個整形的變量,那么 a=b=c 是 正確 OR 錯誤? ;關(guān)系運(yùn)算符用于對象時,是判別兩個引用是否代表同一個對
15、象。而不是判斷兩個引用所指向的對象是否同屬一個類。2.6.3 邏輯運(yùn)算符邏輯運(yùn)算符有&、| 和!,分別是與、或和非。運(yùn)算結(jié)果是true或false; 邏輯運(yùn)算有求值“短路”現(xiàn)象 ,例如程序2-11 :public class shortCut static boolean testOne(int x)System.out.println(x+ +1+ + (x1) );return x 1; static boolean testTwo(int x)System.out.println(x+ +1+ +(x2);return x 2; public static void main(Strin
16、g args)if (testOne(6) & testTwo(1)System.out.println(表達(dá)式為真);else System.out.println(表達(dá)式為假);2.6.4 位運(yùn)算符位運(yùn)算符:&、|、,分別稱為位與、或、異或、左移、右移;Java引入一個專門用于邏輯右移運(yùn)算符,它采用了所謂的零擴(kuò)展技術(shù),不論原值是正或負(fù),一律在高位補(bǔ)0。例如: int a= - 2 , b ; b=a30;2.6.5 三元條件運(yùn)算符語法格式:(exp)? (exp1) :(exp2) ;Java要求:(exp1)與(exp2)必須同類型 。2.6.6 “+”運(yùn)算符Java對“+”進(jìn)行了重載,
17、可以將任何類型的對象(包含原子類型)轉(zhuǎn)化為String類型。 例如:int x=1;char ch=A; double d=9.8;System.out.println(Result: +x+ch+9.8);課堂練習(xí):課外練習(xí)(作業(yè)):P32 3、4、6題。第3章 控制語句教學(xué)目的要求 了解Java程序的結(jié)構(gòu),學(xué)習(xí)使用各種語句結(jié)構(gòu)來控制程序的流程,完成程序的功能任務(wù)。主要內(nèi)容 Java的分支語句; 循環(huán)控制語句; break和continue語句; 帶標(biāo)號的break和continue語句。 重點(diǎn)內(nèi)容 Java的分支語句; 循環(huán)控制語句; break和continue語句;難點(diǎn)內(nèi)容 循環(huán)控制語
18、句; break和continue語句;課時分配3課時教學(xué)方法講授法、演示法、對比法、實(shí)驗(yàn)驗(yàn)證法講授內(nèi)容提要3.1 分支語句if-else語句;switch-case語句 。3.1.1 if 語句if語句的語法格式 同C/C+;條件表達(dá)式必須是布爾類型,例如:下面的寫法在C/C+中是合法的,但在Java中卻是非法的 :int i=10;if ( i ) . 程序3-1描述了用applet從文本框獲取數(shù)據(jù),然后將比較的結(jié)果顯示出來。 / 程序 3-1import java.awt.*;import java.applet.*; public class compareNumbers extend
19、s AppletLabel lab1,lab2;TextField input1,input2;int num1,num2;public void init( ) lab1=new Label(輸入第1個整數(shù)); input1=new TextField(10);lab2=new Label(輸入第2個整數(shù));input2=new TextField(10);add(lab1); add(input1); add(lab2);add(input2);public boolean action(Event e , Object o) if (e.target=input1 | e.target=
20、input2) num1=Integer.parseInt(input1.getText( ); num2=Integer.parseInt(input2.getText( );if(num1num2)showStatus(num1 + num2)showStatus(num1+ +num2);else showStatus(num1+ = +num2);return true;3.1.2 switch 語句switch語句的語法結(jié)構(gòu) 同C/C+;switch后面的表達(dá)式類型必須是字符類型或整形 ;case后面的常量不能重復(fù) ;程序3-3采用小程序?qū)崿F(xiàn)將學(xué)生的百分制成績轉(zhuǎn)換為優(yōu)、良,中、及格和
21、不通過五個等級:/ 程序3-3import java.awt.*;import java.applet.*;public class scoreConvert extends AppletLabel prompt;TextField input;int Excellent,Good,Middle,Pass,Failure;public void init( ) prompt=new Label(輸入成績);input=new TextField(2);add(prompt);add(input);public void paint(Graphics g) g.drawString(各等級的人數(shù)
22、:,25,40);g.drawString(優(yōu)秀 : +Excellent,25,55);g.drawString(良好 : +Good,25,70);g.drawString(中等 : +Middle,25,85);g.drawString(及格 : +Pass,25,100);g.drawString(不通過: +Failure,25,115);public boolean action(Event e , Object o) int score=Integer.parseInt(input.getText( ); showStatus(); input.setText(); switch
23、(score/10) case 10:case 9: Excellent+; break;case 8: Good+; break;case 7: Middle+; break;case 6: Pass+; break;case 5: case 4:case 3:case 2:case 1:case 0: Failure+; break;default: showStatus(輸入有誤,重新輸入!); repaint( ); return true;程序3-3需要注意的地方在action()方法中調(diào)用的repaint( )方法,是一個系統(tǒng)方法,它具有自動調(diào)用paint( )方法的能力,從而實(shí)現(xiàn)
24、對網(wǎng)頁的刷新。3.2 循環(huán)控制語句Java中的循環(huán)控制語句有三種,分別是:while,do-while和for語句;循環(huán)體內(nèi)的語句會反復(fù)執(zhí)行,直到控制布爾表達(dá)式的值變?yōu)閒alse為止。3.2.1 while語句while語句格式: while ( Boolean-Expression ) StatementS 程序示例3-4 略3.2.2 do-while語句do-while語句的語法格式如下:do Statementwhile (Boolean-Expression ) ;程序3-5 如下:/ 產(chǎn)生一個大于0.9的隨機(jī)數(shù)為止public class GenerateDoubleNumbers
25、 public static void main(String args )double d;dod=Math.random( );System.out.println(d);while (d=1;row-) xpos=25;ypos+=15;for(int column=1;column=row;column+) g.drawString(*,xpos,ypos);xpos+=7; 3.3 break語句和continue語句3. 3.1 不帶標(biāo)號的break語句和continue語句break語句可以跳出包含它的最內(nèi)層的循環(huán),不再執(zhí)行剩余的語句;continue語句停止執(zhí)行當(dāng)前的循環(huán),回到
26、循環(huán)處,開始執(zhí)行下一輪的循環(huán)。這些特性和C/C+的功能一樣。for( int i=1;i10;i+) if(i%3=0) continue; else System.out.println(i = +i); for( int i=1;i=0 & h=0 & m=0 & s60)? s: 0);return this ;String tostring( )return hour+:+min+:+sec ;public class timeToString extends Appletprivate time t;public void init( ) t=new time( );public v
27、oid paint(Graphics g) t.setHour(18).setMin(30).setSec(20); g.drawString( time:+t.tostring( ),25,45);在構(gòu)造方法內(nèi)部使用this,它用于指代另外一個構(gòu)造方法,但不能指代非構(gòu)造方法。例如:class point int x, y;point( )this(-1,-1);point(int a, int b) x=a;y=b;4.7 繼承繼承是軟件重用的一種形式 ,可以提高系統(tǒng)的性能;繼承語法:class className extends superClassName 各實(shí)例變量和方法的定義 例如:
28、class point int x, y; point(int x, int y) this.x=x; this.y=y; point( ) this.x=0; this.y=0; class circle extends point int radius; circle(int r, int x, int y) radius=r; this.x=x; this.y=y; Java不支持多繼承,但支持多接口;子類的對象也是其超類的對象,反之未必;繼承具有傳遞性: B繼承于A,C又繼承于B,則C也繼承了A中的實(shí)例變量和方法。關(guān)鍵字super構(gòu)造方法是一種特殊的方法,子類不能繼承超類的構(gòu)造方法,但
29、子類構(gòu)造方法可以通過super調(diào)用超類的構(gòu)造方法。 當(dāng)創(chuàng)建子類對象時,首先執(zhí)行超類構(gòu)造方法,然后執(zhí)行子類的構(gòu)造方法。例如:class point / 程序4-8 int x, y; point(int x, int y) this.x=x; this.y=y; System.out.println(父類構(gòu)造函數(shù)被調(diào)用!); class circle extends point int radius; circle(int r, int x, int y) super(x, y); radius=r; System.out.println(子類構(gòu)造函數(shù)被調(diào)用!); public class te
30、stInherence public static void main(String args ) circle c1;c1=new circle(1,1,1);再次討論構(gòu)造方法若父類沒有定義構(gòu)造方法,那么對父類數(shù)據(jù)的初始化將采用系統(tǒng)缺省的構(gòu)造方法;例如:class point int x, y; class circle extends point int radius; circle(int r, int x, int y) this.x=x; this.y=y; radius=r; 若父類定義有缺省構(gòu)造方法,那么子類可根據(jù)自己的需要設(shè)置自己的構(gòu)造方法。例如:class point int x, y; point( ) this(0,0); point(int x, int y) this.x=x; this.y=y; class circle extends point / 注意子類的構(gòu)造函數(shù) int radius; circle(int r, int x, int y) radius=r; 若父類定義的構(gòu)造方法都是有參的,那么子類構(gòu)造方法必須通過super調(diào)用父類構(gòu)造方法,class point private int x, y; point(int x, int y) this.x=x; this.y=
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年鶴壁汽車工程職業(yè)學(xué)院馬克思主義基本原理概論期末考試筆試題庫
- 歷史故事在初中歷史教學(xué)中的多元解讀與教學(xué)效果分析教學(xué)研究課題報告
- 《基層醫(yī)療機(jī)構(gòu)慢性病管理成效:某地區(qū)慢性病防治體系建設(shè)與實(shí)施分析》教學(xué)研究課題報告
- 《互聯(lián)網(wǎng)金融信息安全風(fēng)險評估與防范中的風(fēng)險評估與業(yè)務(wù)連續(xù)性研究》教學(xué)研究課題報告
- 2024年湖南高爾夫旅游職業(yè)學(xué)院馬克思主義基本原理概論期末考試真題匯編
- 2025年大連醫(yī)科大學(xué)馬克思主義基本原理概論期末考試模擬試卷
- 2025年大灣區(qū)大學(xué)馬克思主義基本原理概論期末考試筆試真題匯編
- 2024年昭通衛(wèi)生職業(yè)學(xué)院馬克思主義基本原理概論期末考試筆試題庫
- 2024年山東水利職業(yè)學(xué)院馬克思主義基本原理概論期末考試真題匯編
- 路基防護(hù)及排水工程施工方案
- 2025重慶市涪陵區(qū)馬武鎮(zhèn)人民政府選聘本土人才14人參考題庫附答案
- 二年級上冊語文試題-第六單元測試題-人教部編版(含答案)
- 醫(yī)院院感考試題庫及答案
- 揀貨主管年終總結(jié)
- 糖尿病重癥患者腸內(nèi)營養(yǎng)血糖調(diào)控方案
- 光伏鉆孔灌注樁基礎(chǔ)施工技術(shù)規(guī)范
- 安保部月度工作總結(jié)
- 防范和抵御宗教向校園滲透
- 【語文】四川省成都市實(shí)驗(yàn)小學(xué)小學(xué)一年級上冊期末試卷(含答案)
- 設(shè)備點(diǎn)巡檢基礎(chǔ)知識培訓(xùn)課件
- 【招聘】招聘數(shù)據(jù)分析報告
評論
0/150
提交評論