版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、程序語言基礎以及java基礎,程序語言基礎,常量 變量 流程控制 數(shù)組,流程控制,選擇 - if-else - switch 重復(循環(huán)) - while - do-while - for,跳轉 - 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(表達式) case 常量值 1: 語句(組); break; case 常量值 2: 語句(組); break; case 常量值 N: 語句(組); break; default: 語句(組); ,表達式必須為byte,short,int或char類型,常量值必須是與表達式類型兼容,且不能重復,break跳出case語句段,若所有的case都不匹配,則可去執(zhí)行defau
3、lt語句,循環(huán)結構,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) 當循環(huán)啟動時,先執(zhí)行其初始化部分即initialization 。通常,這是設置循環(huán)控制變量值的一個表達式,作為控制循環(huán)的計數(shù)器。重要的是你要理解初始化表達式僅被執(zhí)行一次。 (2)計算條件condition的值。條件condition必須是布爾表達式。它通常將循環(huán)控制變
4、量與目標值相比較。如果這個表達式為真,則執(zhí)行循環(huán)體body;如果為假,則循環(huán)終止。 (3)執(zhí)行循環(huán)體的反復部分即iteration,這部分通常是增加或減少循環(huán)控制變量的一個表達式。 (4)接下來重復循環(huán),首先計算條件condition的值,然后執(zhí)行循環(huán)體,接著執(zhí)行反復表達式。這個過程不斷重復直到控制表達式變?yōu)榧佟?while循環(huán)語句,while語句的執(zhí)行過程,判斷控制表達式condition的值,當其是真時,while語句重復執(zhí)行一個語句或語句塊。其中條件condition可以是任何布爾表達式。只要條件表達式為真,循環(huán)體就被執(zhí)行。當條件condition為假時,程序控制就傳遞到循環(huán)后面緊跟的語
5、句行。若只有單個語句需要重復,大括號則是不必要的。,do-while循環(huán)語句,do-while語句的功能,先執(zhí)行循環(huán)體,然后再計算條件表達式condition 。如果表達式為真,則循環(huán)繼續(xù)。否則,循環(huán)結束。對所有的Java循環(huán)都一樣,條件condition必須是一個布爾表達式。,其他語句,label:語句塊 :用于給程序塊取名字。 break :語句在循環(huán)中用于立即從當前循環(huán)終止執(zhí)行,結束當前循環(huán)的執(zhí)行。 continue :語句則是從其調(diào)用處跳至循環(huán)的開始處,結束本次循環(huán),繼續(xù)執(zhí)行下一次循環(huán), continue 語句之后的語句將不再執(zhí)行。,一維數(shù)組的定義,數(shù)組類型 數(shù)組名; 或 數(shù)組類型 數(shù)
6、組名; 數(shù)組類型可為Java中的任何數(shù)據(jù)類型。 數(shù)組名,必須符合標識符定義規(guī)則。 “”指明該變量是一個數(shù)組類型的變量,可放到數(shù)組名后面,也可放到數(shù)組名前。,int student; int student;,一維數(shù)組的初始化,使用new分配內(nèi)存空間,并按照數(shù)組的類型,為每一個數(shù)組元素建立默任值。 int student ; student=new int10; 或 int student=new int10;,一維數(shù)組的引用,引用格式為: 數(shù)組名下標 int a=new int10; int b=a0+a9; 數(shù)組下標為從0到9。如果調(diào)用了a10,程序運行時將提示錯誤: 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ù)組名下標2 下標1; 下標1,下標2分為二維數(shù)組的第一、二維下標,同一維數(shù)組一樣,也可為整型常量和表達式
9、,并且數(shù)組下標都從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知識,Java基本知識
10、異常、IO和多線程 圖形用戶界面 深入話題,Java基本知識,Java介紹 Java基礎 面向?qū)ο蠡纠碚?類和對象 初始化和清除 多態(tài)性,三個專題,異常 IO 線程與多線程,圖形用戶界面,Java Applet GUI application,Java Swing Event model,深入話題,數(shù)據(jù)庫基礎知識 JDBC 實戰(zhàn)練習,推薦書籍資料,Thinking In Java,Bruce Eckel Core Java 2 ,Java來歷,Java語言的發(fā)展(1),1991年由James Gosling負責開發(fā)的一個分布式代碼系統(tǒng)(Oak),最初是為家用消費電子產(chǎn)品(電冰箱、電視機等)進
11、行編程控制 。 1993年Sun 公司將目標市場轉向Internet 。 1994年將Oak語言更名為Java。 1995年Java被正式發(fā)布,之后立即引起極大的轟動。,Java語言的發(fā)展(2),自從于1995年被正式推出之后,Java語言就以其獨特的優(yōu)勢迅猛發(fā)展,經(jīng)過短短10來年時間,成為迄今為止最為優(yōu)秀的面向?qū)ο笳Z言。Java也從當初的一種語言而逐漸形成一種產(chǎn)業(yè),基于Java語言的J2EE架構已成為微軟.NET平臺的強大競爭對手。 當初,Java語言最初的發(fā)布不亞于一場革命,但是它并不標志著Java快速革新時代的結束。在Java 1.0發(fā)布后不久,Java的設計者就已經(jīng)制定出了Java 1
12、.1、 Java 1.2、 Java 1.3、 Java 1.4 、Java 1.5,程序語言的4個層次,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文件與機器碼不同,不是真正的CPU可運行的指令代碼,故又稱偽代碼。 通過JVM以及JRE將其轉成本地機器代碼,達到一次撰寫,到處運行的效益。 (Write Once,Run An
13、ywhere),Java虛擬機,實現(xiàn)平臺無關性的基礎就是Java虛擬機,是以Java字節(jié)碼為指令組的軟CPU。負責對本地*.class文件解釋執(zhí)行。 包含類加載器、字節(jié)確認器、以及JIT實時編譯器。 類加載器:用來取得從網(wǎng)絡或本地的類文件。 字節(jié)確認器:確認類文件是否有正確的格式。 JIT:使虛擬機能提高到編譯式的運行效率。,Java環(huán)境,Java 源程序,編譯,字節(jié)碼 文件,Java 虛擬機,執(zhí)行,Linux,Windows,Mac,Java平臺,The Java Virtual Machine (Java VM) The Java Application Programming Inter
14、face (Java API),Java目前的主要應用,眾多軟件開發(fā)商支持Java軟件產(chǎn)品。 面向?qū)ο蟮膽瞄_發(fā)。 企業(yè)級軟件開發(fā)。 動態(tài)畫面的設計,包括圖形圖像的調(diào)用。 手機游戲,應用程序開發(fā)。 其他語言能做的事,Java都能做,Java語言的特點1,簡單性 面向?qū)ο?分布式處理 健壯性 結構中立 安全性,系統(tǒng)精簡,但功能齊備。 風格類似于C+,對C+程序員而言非常容易掌握。 Java摒棄了C+中容易引發(fā)程序錯誤的地方,如指針操作和內(nèi)存管理; 提供豐富的類庫。,完全是面向?qū)ο蟮?,它不支持類似C語言那樣的面向過程的程序設計技術。,支持TCP/IP協(xié)議。Java應用程序可通過一個特定的URL來打
15、開并訪問對象,就像訪問本地文件系統(tǒng)那樣簡單。,提供面向?qū)ο蟮漠惓L幚頇C制,在編譯時能對Null指針檢測、數(shù)組邊界檢測、異常出口字節(jié)代碼校驗等。 自動垃圾收集來進行內(nèi)存管理。,將源程序編譯成一種結構中立的中間文件格式。只要有Java運行系統(tǒng)的機器都能執(zhí)行這種中間代碼。,Java語言提供的安全。 編譯器提供的安全。 字節(jié)碼校驗。 類裝載。,Java語言的特點2,可移植性 解釋性 高性能 多線程 動態(tài),Java應用程序可以在配備了Java解釋器和運行環(huán)境的任何計算機系統(tǒng)上運行,而與體系結構無關。,Java編譯器將java源文件生成類文件.class,類文件可通過java命令解釋執(zhí)行,將Java字節(jié)碼
16、轉換為機器碼。,JIT編譯器??梢蕴岣?Java 代碼的執(zhí)行速度。,內(nèi)置多線程功能,使得在一個程序里可同時執(zhí)行多個小任務。帶來的好處是更好的交互性和實時控制性。,允許程序動態(tài)地裝入運行過程中所需要的類,這是C+語言進行面向?qū)ο蟪绦蛟O計所無法實現(xiàn)的。,跨平臺/可移植,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+的比較,第一個Java程序,class HelloWorld publ
18、ic static void main(String args) System.out.println(“HelloWorld”); ,編譯與運行Java程序,安裝JDK 設置PATH javac HelloWorld.java javac 編譯結果:HelloWorld.class java HelloWorld java 千萬不要java ,Java程序結構,(1)至多有一個public類,文件名必須與類名相同。 (2)程序可以有一個或多個其它類。 (3)當需要從某個類繼承或使用某個類及其方法時,使用import引入該類的定義。 (4)Java程序組成結構 package/0個或1個,必須放在文件開始 import/0個或多個,必須放在所有類定義之前 public classDefinition/0個或1個,文件名必須與類名相同 classDefinition /0個或多個 interface Definition /0個或多個,使用命令行工具,文本編輯程序(記事本、UltraEdit) 進入命令行模式 java version javac xxx.java java xxx(類名),使用集成開發(fā)工具
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 寧波寧波市鄞州區(qū)人民檢察院招錄司法雇員筆試歷年參考題庫附帶答案詳解
- 大慶大慶市政務服務中心2025年選調(diào)5人筆試歷年參考題庫附帶答案詳解
- 四川2025上半年四川省水利廳直屬事業(yè)單位招聘228人筆試歷年參考題庫附帶答案詳解
- 吉林2025年吉林省省直事業(yè)單位招聘186人(1號)筆試歷年參考題庫附帶答案詳解
- 雙鴨山雙鴨山市煤炭生產(chǎn)安全管理局招聘25名急需緊缺事業(yè)單位工作人員筆試歷年參考題庫附帶答案詳解
- 包頭2025年上半年包頭市“事業(yè)編制企業(yè)用”引才81人筆試歷年參考題庫附帶答案詳解
- 2025年高三生物發(fā)酵工程期末試卷
- 中央國家核應急響應技術支持中心招聘筆試歷年參考題庫附帶答案詳解
- 中央2025年中國信息安全測評中心招聘31人筆試歷年參考題庫附帶答案詳解
- 2025年初二語文襯托手法正襯反襯辨析考卷
- 開曼群島公司法2024版中文譯本(含2024年修訂主要內(nèi)容)
- 貴陽市普通中學2023-2024學年度高一第一學期數(shù)學期末監(jiān)測考試試卷
- 湘教 八下 數(shù)學 第2章《平行四邊形的判定》課件
- 骨科技能操作流程及評分標準
- 控制區(qū)人員通行證件考試1附有答案
- 2016-2023年北京財貿(mào)職業(yè)學院高職單招(英語/數(shù)學/語文)筆試歷年參考題庫含答案解析
- 《思想道德與法治》
- 滬教版生物科學八年級上冊重點知識點總結
- 汽車美容裝潢工(四級)職業(yè)資格考試題庫-下(判斷題匯總)
- 焊縫的圖示法
- 2020年云南省中考英語試卷真題及答案詳解(含作文范文)
評論
0/150
提交評論