




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、程序語言基礎(chǔ)以及java基礎(chǔ),程序語言基礎(chǔ),常量 變量 流程控制 數(shù)組,流程控制,選擇 - if-else - switch 重復(fù)(循環(huán)) - while - do-while - for,跳轉(zhuǎn) - break - continue 其它語句 - return,if語句,if (條件) 語句1; else 語句2;,if (條件) 語句組; else 語句組; ,public class SignFunction public static void main(String args) int intx; intx=0; if(intx0) System.out.println(intx+ i
2、s + ;); else if(intx0) System.out.println(intx+ is - ;); else System.out.println(intx+ is 0 ;); ,switch語句,switch(表達(dá)式) case 常量值 1: 語句(組); break; case 常量值 2: 語句(組); break; case 常量值 N: 語句(組); break; default: 語句(組); ,表達(dá)式必須為byte,short,int或char類型,常量值必須是與表達(dá)式類型兼容,且不能重復(fù),break跳出case語句段,若所有的case都不匹配,則可去執(zhí)行defau
3、lt語句,循環(huán)結(jié)構(gòu),1、while 循環(huán) while(條件) 語句組; 2、do-while循環(huán) do 語句組; while(條件); 3、for 循環(huán) for(變量初始化; 條件; 遞增或遞減變量的值) 語句組; ,注意:兩者的區(qū)別,1先判斷條件,成立才執(zhí)行。2先執(zhí)行在判斷條件。,for循環(huán)語句,for語句的執(zhí)行過程,(1) 當(dāng)循環(huán)啟動(dòng)時(shí),先執(zhí)行其初始化部分即initialization 。通常,這是設(shè)置循環(huán)控制變量值的一個(gè)表達(dá)式,作為控制循環(huán)的計(jì)數(shù)器。重要的是你要理解初始化表達(dá)式僅被執(zhí)行一次。 (2)計(jì)算條件condition的值。條件condition必須是布爾表達(dá)式。它通常將循環(huán)控制變
4、量與目標(biāo)值相比較。如果這個(gè)表達(dá)式為真,則執(zhí)行循環(huán)體body;如果為假,則循環(huán)終止。 (3)執(zhí)行循環(huán)體的反復(fù)部分即iteration,這部分通常是增加或減少循環(huán)控制變量的一個(gè)表達(dá)式。 (4)接下來重復(fù)循環(huán),首先計(jì)算條件condition的值,然后執(zhí)行循環(huán)體,接著執(zhí)行反復(fù)表達(dá)式。這個(gè)過程不斷重復(fù)直到控制表達(dá)式變?yōu)榧佟?while循環(huán)語句,while語句的執(zhí)行過程,判斷控制表達(dá)式condition的值,當(dāng)其是真時(shí),while語句重復(fù)執(zhí)行一個(gè)語句或語句塊。其中條件condition可以是任何布爾表達(dá)式。只要條件表達(dá)式為真,循環(huán)體就被執(zhí)行。當(dāng)條件condition為假時(shí),程序控制就傳遞到循環(huán)后面緊跟的語
5、句行。若只有單個(gè)語句需要重復(fù),大括號(hào)則是不必要的。,do-while循環(huán)語句,do-while語句的功能,先執(zhí)行循環(huán)體,然后再計(jì)算條件表達(dá)式condition 。如果表達(dá)式為真,則循環(huán)繼續(xù)。否則,循環(huán)結(jié)束。對(duì)所有的Java循環(huán)都一樣,條件condition必須是一個(gè)布爾表達(dá)式。,其他語句,label:語句塊 :用于給程序塊取名字。 break :語句在循環(huán)中用于立即從當(dāng)前循環(huán)終止執(zhí)行,結(jié)束當(dāng)前循環(huán)的執(zhí)行。 continue :語句則是從其調(diào)用處跳至循環(huán)的開始處,結(jié)束本次循環(huán),繼續(xù)執(zhí)行下一次循環(huán), continue 語句之后的語句將不再執(zhí)行。,一維數(shù)組的定義,數(shù)組類型 數(shù)組名; 或 數(shù)組類型 數(shù)
6、組名; 數(shù)組類型可為Java中的任何數(shù)據(jù)類型。 數(shù)組名,必須符合標(biāo)識(shí)符定義規(guī)則。 “”指明該變量是一個(gè)數(shù)組類型的變量,可放到數(shù)組名后面,也可放到數(shù)組名前。,int student; int student;,一維數(shù)組的初始化,使用new分配內(nèi)存空間,并按照數(shù)組的類型,為每一個(gè)數(shù)組元素建立默任值。 int student ; student=new int10; 或 int student=new int10;,一維數(shù)組的引用,引用格式為: 數(shù)組名下標(biāo) int a=new int10; int b=a0+a9; 數(shù)組下標(biāo)為從0到9。如果調(diào)用了a10,程序運(yùn)行時(shí)將提示錯(cuò)誤: java.lang.A
7、rrayIndexOutOfBoundsException,一維數(shù)組的使用,class qiuhe public static void main(String args) int a=5,8,2,4,1,9,78; System.out.println(The min is:+minnum(a); static int minnum(int num) int min=num0; for(int i=0;inumi) min=numi; return min; ,注意:兩者的區(qū)別,1先判斷條件,成立才執(zhí)行。2先執(zhí)行在判斷條件。,二維數(shù)組的定義,定義格式為: 數(shù)組類型 數(shù)組名; 或 數(shù)組類型 數(shù)
8、組名; 或 數(shù)組類型 數(shù)組名;,int array_name ; 或 int array_name; 或 int array_name ;,數(shù)組的數(shù)組,二維數(shù)組的初始化,(1)直接為每一維分配空間,例如: int a=new int32; (2)高維開始,分別為每一維分配空間,例如:int a =new int3; a0=new int2; a1=new int3; a2=new int4; (3)數(shù)組常量初始化,例如: int a=1,2,3,4,5,6;,二維數(shù)組的引用,引用格式為: 數(shù)組名下標(biāo)2 下標(biāo)1; 下標(biāo)1,下標(biāo)2分為二維數(shù)組的第一、二維下標(biāo),同一維數(shù)組一樣,也可為整型常量和表達(dá)式
9、,并且數(shù)組下標(biāo)都從0開始。,int a=1,2,3,4,5,6,7,8,9,10,11,12; System.out.println(數(shù)組a各元素的值為:); for(int i=0;i4;i+) for(int j=0;j3;j+) System.out.print(aij+t); System.out.println(); ,數(shù)組的一些方法,System類中的靜態(tài)方法arraycopy() 。 Arrays類中的方法 。 排序方法sort(Object arrayname ) 二分查找方法 binarySearch(Object a,Object key),Java知識(shí),Java基本知識(shí)
10、異常、IO和多線程 圖形用戶界面 深入話題,Java基本知識(shí),Java介紹 Java基礎(chǔ) 面向?qū)ο蠡纠碚?類和對(duì)象 初始化和清除 多態(tài)性,三個(gè)專題,異常 IO 線程與多線程,圖形用戶界面,Java Applet GUI application,Java Swing Event model,深入話題,數(shù)據(jù)庫基礎(chǔ)知識(shí) JDBC 實(shí)戰(zhàn)練習(xí),推薦書籍資料,Thinking In Java,Bruce Eckel Core Java 2 ,Java來歷,Java語言的發(fā)展(1),1991年由James Gosling負(fù)責(zé)開發(fā)的一個(gè)分布式代碼系統(tǒng)(Oak),最初是為家用消費(fèi)電子產(chǎn)品(電冰箱、電視機(jī)等)進(jìn)
11、行編程控制 。 1993年Sun 公司將目標(biāo)市場(chǎng)轉(zhuǎn)向Internet 。 1994年將Oak語言更名為Java。 1995年Java被正式發(fā)布,之后立即引起極大的轟動(dòng)。,Java語言的發(fā)展(2),自從于1995年被正式推出之后,Java語言就以其獨(dú)特的優(yōu)勢(shì)迅猛發(fā)展,經(jīng)過短短10來年時(shí)間,成為迄今為止最為優(yōu)秀的面向?qū)ο笳Z言。Java也從當(dāng)初的一種語言而逐漸形成一種產(chǎn)業(yè),基于Java語言的J2EE架構(gòu)已成為微軟.NET平臺(tái)的強(qiáng)大競(jìng)爭(zhēng)對(duì)手。 當(dāng)初,Java語言最初的發(fā)布不亞于一場(chǎng)革命,但是它并不標(biāo)志著Java快速革新時(shí)代的結(jié)束。在Java 1.0發(fā)布后不久,Java的設(shè)計(jì)者就已經(jīng)制定出了Java 1
12、.1、 Java 1.2、 Java 1.3、 Java 1.4 、Java 1.5,程序語言的4個(gè)層次,Machine C/C+, Pascal Perl, basic Shell Which level is Java in?,Java Platform 2,J2SE: Standard Edition J2EE: Enterprise Edition J2ME: Mirco Edition,字節(jié)碼,*.class文件與機(jī)器碼不同,不是真正的CPU可運(yùn)行的指令代碼,故又稱偽代碼。 通過JVM以及JRE將其轉(zhuǎn)成本地機(jī)器代碼,達(dá)到一次撰寫,到處運(yùn)行的效益。 (Write Once,Run An
13、ywhere),Java虛擬機(jī),實(shí)現(xiàn)平臺(tái)無關(guān)性的基礎(chǔ)就是Java虛擬機(jī),是以Java字節(jié)碼為指令組的軟CPU。負(fù)責(zé)對(duì)本地*.class文件解釋執(zhí)行。 包含類加載器、字節(jié)確認(rèn)器、以及JIT實(shí)時(shí)編譯器。 類加載器:用來取得從網(wǎng)絡(luò)或本地的類文件。 字節(jié)確認(rèn)器:確認(rèn)類文件是否有正確的格式。 JIT:使虛擬機(jī)能提高到編譯式的運(yùn)行效率。,Java環(huán)境,Java 源程序,編譯,字節(jié)碼 文件,Java 虛擬機(jī),執(zhí)行,Linux,Windows,Mac,Java平臺(tái),The Java Virtual Machine (Java VM) The Java Application Programming Inter
14、face (Java API),Java目前的主要應(yīng)用,眾多軟件開發(fā)商支持Java軟件產(chǎn)品。 面向?qū)ο蟮膽?yīng)用開發(fā)。 企業(yè)級(jí)軟件開發(fā)。 動(dòng)態(tài)畫面的設(shè)計(jì),包括圖形圖像的調(diào)用。 手機(jī)游戲,應(yīng)用程序開發(fā)。 其他語言能做的事,Java都能做,Java語言的特點(diǎn)1,簡(jiǎn)單性 面向?qū)ο?分布式處理 健壯性 結(jié)構(gòu)中立 安全性,系統(tǒng)精簡(jiǎn),但功能齊備。 風(fēng)格類似于C+,對(duì)C+程序員而言非常容易掌握。 Java摒棄了C+中容易引發(fā)程序錯(cuò)誤的地方,如指針操作和內(nèi)存管理; 提供豐富的類庫。,完全是面向?qū)ο蟮模恢С诸愃艭語言那樣的面向過程的程序設(shè)計(jì)技術(shù)。,支持TCP/IP協(xié)議。Java應(yīng)用程序可通過一個(gè)特定的URL來打
15、開并訪問對(duì)象,就像訪問本地文件系統(tǒng)那樣簡(jiǎn)單。,提供面向?qū)ο蟮漠惓L幚頇C(jī)制,在編譯時(shí)能對(duì)Null指針檢測(cè)、數(shù)組邊界檢測(cè)、異常出口字節(jié)代碼校驗(yàn)等。 自動(dòng)垃圾收集來進(jìn)行內(nèi)存管理。,將源程序編譯成一種結(jié)構(gòu)中立的中間文件格式。只要有Java運(yùn)行系統(tǒng)的機(jī)器都能執(zhí)行這種中間代碼。,Java語言提供的安全。 編譯器提供的安全。 字節(jié)碼校驗(yàn)。 類裝載。,Java語言的特點(diǎn)2,可移植性 解釋性 高性能 多線程 動(dòng)態(tài),Java應(yīng)用程序可以在配備了Java解釋器和運(yùn)行環(huán)境的任何計(jì)算機(jī)系統(tǒng)上運(yùn)行,而與體系結(jié)構(gòu)無關(guān)。,Java編譯器將java源文件生成類文件.class,類文件可通過java命令解釋執(zhí)行,將Java字節(jié)碼
16、轉(zhuǎn)換為機(jī)器碼。,JIT編譯器??梢蕴岣?Java 代碼的執(zhí)行速度。,內(nèi)置多線程功能,使得在一個(gè)程序里可同時(shí)執(zhí)行多個(gè)小任務(wù)。帶來的好處是更好的交互性和實(shí)時(shí)控制性。,允許程序動(dòng)態(tài)地裝入運(yùn)行過程中所需要的類,這是C+語言進(jìn)行面向?qū)ο蟪绦蛟O(shè)計(jì)所無法實(shí)現(xiàn)的。,跨平臺(tái)/可移植,Cross Platform/Portable Portable: the dream from UNIX and C to Java JVM Unique data type Int: 32-bit Char: Unicode,Capacity: high or low?,Low: Interpreted Code check S
17、tack machine High JIT Mutil-thread Byte code simple design,Stable and secure,No point Index check Auto memory management,Simple: KISS,C+ like No point Auto memory check,Pure OOP,Java = C+ - Mutil-inheritance Virtual inheritance Template Operator overloading,Java與C+的比較,第一個(gè)Java程序,class HelloWorld publ
18、ic static void main(String args) System.out.println(“HelloWorld”); ,編譯與運(yùn)行Java程序,安裝JDK 設(shè)置PATH javac HelloWorld.java javac 編譯結(jié)果:HelloWorld.class java HelloWorld java 千萬不要java ,Java程序結(jié)構(gòu),(1)至多有一個(gè)public類,文件名必須與類名相同。 (2)程序可以有一個(gè)或多個(gè)其它類。 (3)當(dāng)需要從某個(gè)類繼承或使用某個(gè)類及其方法時(shí),使用import引入該類的定義。 (4)Java程序組成結(jié)構(gòu) package/0個(gè)或1個(gè),必須放在文件開始 import/0個(gè)或多個(gè),必須放在所有類定義之前 public classDefinition/0個(gè)或1個(gè),文件名必須與類名相同 classDefinition /0個(gè)或多個(gè) interface Definition /0個(gè)或多個(gè),使用命令行工具,文本編輯程序(記事本、UltraEdit) 進(jìn)入命令行模式 java version javac xxx.java java xxx(類名),使用集成開發(fā)工具
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 業(yè)務(wù)下線合作合同范例
- 人員安全合同范例
- 農(nóng)村房子預(yù)售合同范例
- 內(nèi)租合同范例
- 上海楊浦綠植養(yǎng)護(hù)合同范例
- 農(nóng)村住房維修合同范例
- 養(yǎng)生商品售賣合同范例
- 企業(yè)購房定金合同范例
- 農(nóng)村房車營地出租合同范例
- 中百倉儲(chǔ)代銷合同范例
- 肺結(jié)核病人的心理護(hù)理
- 2025年開封文化藝術(shù)職業(yè)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫含答案
- 2025年遼寧冶金職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫有完整答案
- 2025年安徽揚(yáng)子職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(各地真題)
- 煙草職業(yè)鑒定三級(jí)技能考點(diǎn)
- 創(chuàng)新創(chuàng)業(yè)項(xiàng)目計(jì)劃書撰寫
- 2024年上海市楊浦區(qū)復(fù)旦大學(xué)附中自主招生數(shù)學(xué)試卷
- 《汽車底盤構(gòu)造與維修》專業(yè)課程標(biāo)準(zhǔn)
- 2024年江西應(yīng)用工程職業(yè)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫標(biāo)準(zhǔn)卷
- 2023年初中畢業(yè)生信息技術(shù)中考知識(shí)點(diǎn)詳解
- 做賬實(shí)操-建筑施工企業(yè)的收入確認(rèn)方法
評(píng)論
0/150
提交評(píng)論