第一篇 Java編程基礎(chǔ)_第1頁
第一篇 Java編程基礎(chǔ)_第2頁
第一篇 Java編程基礎(chǔ)_第3頁
第一篇 Java編程基礎(chǔ)_第4頁
第一篇 Java編程基礎(chǔ)_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、 第一章 Java開發(fā)環(huán)境的搭配1.1 理解Java 1.1.1java有哪些特性? 簡單性:java語言和c/c+語言很接近,使得大多數(shù)程序員很容易學(xué)習(xí)java語言。另一方面,java丟棄了C+中很少使用的,很難理解的特性,如操作符重載,多繼承,自動強(qiáng)制類型轉(zhuǎn)化,特別的,java拋棄了C語言的指針,并提供了垃圾回收機(jī)制,使得程序員不必為內(nèi)存管理擔(dān)憂。 面向?qū)ο螅簀ava語言為了與現(xiàn)實(shí)結(jié)合,將生活中的事物都可以看成對象,為了簡單,只支持單繼承,單接口之間支持多繼承??傊?,java元是一個純面向?qū)ο蟪绦蛟O(shè)計語言。 第一章 Java開發(fā)環(huán)境的搭配 1.1.1java有哪些特性? 分布式:java語

2、言支持Internet應(yīng)用的開發(fā),在基本的java應(yīng)用編程接口中有一個網(wǎng)絡(luò)編程接口(),它提供了用于網(wǎng)絡(luò)編程的類庫,包括Socket、ServerSocket等。 健壯性:java的強(qiáng)類型機(jī)制,異常處理,垃圾的自動收集等都是java程序健壯性的重要保證。 安全性:java通常被用在網(wǎng)絡(luò)環(huán)境中,為此,java提供了一個安全機(jī)制以防惡意代碼的攻擊。在java中沒有使用指針,這就更好的加強(qiáng)了java的安全性。 第一章 Java開發(fā)環(huán)境的搭配 1.1.1java有哪些特性? 可移植性:java系統(tǒng)本身具有很強(qiáng)的可移植性,java編譯器使用java實(shí)現(xiàn)的,java的運(yùn)行環(huán)境是用ANSI C實(shí)現(xiàn)的。在編寫

3、好一段代碼后就可以將它移植到其他的平臺上運(yùn)行。 高性能:與解釋性的高級腳本語言相比,java的確是高性能的。 多線程:在java語言中,支持多線程,一個是繼承Thread類及其子類,一個是實(shí)現(xiàn)Runnable接口。java還提供了多線程之間的同步機(jī)制。 第一章 Java開發(fā)環(huán)境的搭配1.2搭建java所需環(huán)境 1.2.1 下載JDK 下載地址:/javase/downloads/index.jsp 下載之后:在指定目錄下會出現(xiàn)名為jdk-windows-i586-p.exe的可執(zhí)行文件。 注意:此處的指代所下載JDK的版本號。 第一章 Java開發(fā)環(huán)境的搭配 1.2.2 安裝JDK 執(zhí)行安裝程

4、序,就會進(jìn)入安裝界面,然后就隨著指示進(jìn)行下一步操作。但是安裝JDK及JRE后,并不是可以立即使用,我們還要配置環(huán)境。 注意:JDK是開發(fā)環(huán)境、JRE是java程序的運(yùn)行環(huán)境。如果只是為了運(yùn)行java程序,可以僅安裝JRE而不用安裝JDK。 第一章 Java開發(fā)環(huán)境的搭配 1.2.3 配置環(huán)境 安裝完成后,先來設(shè)置環(huán)境變量。 設(shè)置窗口:右擊我的電腦”-屬性-系統(tǒng)屬性-“高級-環(huán)境變量. (1)JAVA-HOME :Java的主目錄,就是Java的安裝目錄,用來識別Java的安裝位置。 (2)PATH; 操作系統(tǒng)執(zhí)行命令的搜索路徑,在PATH指定的路徑中搜索。 (3)CLASS-PATH:Java

5、類的搜索路徑。 第一章 Java開發(fā)環(huán)境的搭配 1.2.4 測試JDK配置是否成功 設(shè)置好環(huán)境變量后,就可以對剛設(shè)置好的變量進(jìn)行測試,并檢測java是否可以運(yùn)行。 (1)單擊開始按鈕,選擇運(yùn)行選項(xiàng),在運(yùn)行對話框中輸入cmd命令。 (2)之后單擊確定按鈕,打開命令行窗口。 (3)在光標(biāo)處輸入:javac命令,按下Enter鍵執(zhí)行,即可看到測試結(jié)果。 第一章 Java開發(fā)環(huán)境的搭配 1.2.5 終端執(zhí)行java程序 javac 路徑 類名.java 或者 javac d 路徑 類名.java (生成字節(jié)碼文件.class,) java 類名 1.2.6 Java規(guī)范 (1)單行注釋:/ 從雙斜線開

6、始到本行結(jié)束被注釋掉。 (2)多行注釋:/* 在這個范圍之內(nèi)都是注釋 */ (3)文檔注釋:/* */ 第一章 Java開發(fā)環(huán)境的搭配實(shí)例1 開發(fā)第一個Java程序 代碼如下: public class Example1 public static void mian(String args) System.out.println(Hello World!); 輸出結(jié)果:Hello world!第二章 Java基礎(chǔ)類型與運(yùn)算符2.1 基本數(shù)據(jù)類型 在java中,基本的數(shù)據(jù)類型主要有8中,包括整數(shù):int,short,long,byte;浮點(diǎn)數(shù):float,double;字符類型:char:布爾

7、類型:boolean byte 1個字節(jié) float 4個字節(jié) 整數(shù) short 2個字節(jié) 浮點(diǎn)數(shù) int 4個字節(jié) double 8個字節(jié) long 8個字節(jié)第二章 Java基礎(chǔ)類型與運(yùn)算符2.1 基本數(shù)據(jù)類型 字符類型 char 2個字節(jié) 布爾類型 boolean 1個字節(jié) 注:String類型:是一個類,而不是基本類型。 2.2 基本數(shù)據(jù)類型的賦值 2.2.1 整數(shù)類型 常量:123、6000(十進(jìn)制),077(八進(jìn)制), 0 x 3ABC(十六進(jìn)制) 變量: byte bb=12;/值不能超出byte的取值范圍 -27(27-1) 第二章 Java基礎(chǔ)類型與運(yùn)算符2.2.1 整數(shù)類型

8、byte bb=0 x771;/0 x771已經(jīng)超出了byte的取值范圍,所 以編譯這句話會出錯。 short s=124;/取值范圍不能超過:-215(215-1) int x=1245;/取值范圍不能超過:-231(231-1) long l=123456l;/取值范圍不能超過:-261(261-1) 注:定義整數(shù)型變量并賦初值時,默認(rèn)的都是int型的。2.2.2 浮點(diǎn)數(shù)類型 常量: 123.234f、123.23F、234.456d(d可以省略)第二章 Java基礎(chǔ)類型與運(yùn)算符 2.2.2 浮點(diǎn)數(shù)類型 變量: float f=12.23f; double d=23.34; 注:定義浮點(diǎn)數(shù)

9、類型,賦值時,默認(rèn)的是double型的。 所以給float類型賦值時要加f表示它是float型的。 2.2.3 字符類型 常量:Java使用Unicode字符集,Unicode表中的字符就是一個字符常量,字符常量需要用單引號括起,如a,%第二章 Java基礎(chǔ)類型與運(yùn)算符 2.2.3 字符類型 6,$等。 有些字符(如回車符)不能通過鍵盤輸入到字符串或程序中,這就需要使用轉(zhuǎn)意字符常量,如n(換行)、t(水平制表符)、(單引號)等。 變量: char c=a;/內(nèi)存存儲的是97,所以下面寫法是正確的。 char c=97; char ch=u0234;/表示一個十六進(jìn)制的字符第二章 Java基礎(chǔ)類

10、型與運(yùn)算符 注:要觀察一個字符在字符集中的順序位置,必須使用int類型顯示轉(zhuǎn)換,如(int)a。 2.2.4 邏輯類型 常量:true、false 變量:用關(guān)鍵字boolean來定義 boolean b=true;第二章 Java基礎(chǔ)類型與運(yùn)算符2.3 數(shù)據(jù)類型轉(zhuǎn)換 隱式轉(zhuǎn)換:從小范圍到大范圍 byte-short-int-long -float-double以及char-int。當(dāng)int-float 和 long-float以及l(fā)ong-double也有可能發(fā)生數(shù)據(jù) 和精度的丟失。 強(qiáng)制轉(zhuǎn)換:從大范圍到小范圍。但強(qiáng)制轉(zhuǎn)化可能有數(shù)據(jù)和 精度的丟失,也有可能改變正負(fù)性。第二章 Java基礎(chǔ)類型與

11、運(yùn)算符2.4 對象類型(引用類型) (1).屬于所有非基本類型的其它類型 (2).類型的分類: -八種基本類型 -引用類型 (3).在內(nèi)存中的存儲方式 對象類型的變量實(shí)際上存儲的是對象所在的內(nèi)存 的地 址。 一個對象類型占4個字節(jié),也就是其最大尋址空 間是4G。第二章 Java基礎(chǔ)類型與運(yùn)算符內(nèi)存被分為兩塊空間:棧(heap)空間和堆(stack)空間 棧:負(fù)責(zé)給方法分配空間main方法在棧的最下面方法里對象的引用也是存在??臻g中的。 存儲對象的引用如果是定義在方法體內(nèi)的也是存在棧 中的。 堆:給對象分配空間 對象就相當(dāng)于一個氣球,引用就相當(dāng)于栓著氣球的繩子。 一個對象可以有多個引用指向它。第

12、二章 Java基礎(chǔ)類型與運(yùn)算符2.5 垃圾回收 (1)、如果某一個對象沒有引用指向它了,那么這個對象就是個垃圾對象 比如String s=new String(.); s=null; 那被new出來的String對象就是一個垃圾數(shù)據(jù)了 (2)、垃圾回收機(jī)制 對于沒有被引用的對象,java JVM會自動回收 System.gc() 提醒虛擬機(jī)進(jìn)行垃圾回收,但只是提醒建議第二章 Java基礎(chǔ)類型與運(yùn)算符2.6 錯誤、警告和異常 (1)、空引用 比如String s=null s就沒有指向任何對象 s.方法名,如s.charAt(0),如果s是空的話就會拋出 NullPointerException

13、(空指針異常) (2)、編譯的問題: 錯誤 警告 因?yàn)檫`背了語法的要求 (3)、運(yùn)行時問題: Exception 異常 程序還可以繼續(xù)進(jìn)行 Error 錯誤 程序中斷了,比如內(nèi)存溢出了 編譯器檢查不出來,而 而是運(yùn)行時檢查出來的第二章 Java基礎(chǔ)類型與運(yùn)算符 2.7 運(yùn)算符 2.7.2 運(yùn)算符分類 描述 運(yùn)算符 結(jié)合性單目運(yùn)算符 + - + - ! 右到左算數(shù)運(yùn)算符 * / % + - 左到右移位運(yùn)算符 左到右關(guān)系運(yùn)算符 = instanceof 左到右等值運(yùn)算符 = != 左到右位運(yùn)算符 & | 左到右邏輯運(yùn)算符 & | 左到右三目條件運(yùn)算符?: 左到右賦值運(yùn)算符= += -+ *+ /+

14、%+ = &= = != = 右到左第二章 Java基礎(chǔ)類型與運(yùn)算符 2.7.2 運(yùn)算符分類 1 單目運(yùn)算符:+和-的用法 如:+a表示先a加1在運(yùn)算;a+表示a先運(yùn)算后加1; -a表示先a減1在運(yùn)算;a-表示a先運(yùn)算后減1; 2 算數(shù)運(yùn)算符:%表示的是求余數(shù);/表示的是求商; 如 7%2=1 7/2=3 3移位運(yùn)算符: 移位運(yùn)算符最多只能移位32位,即ab在編譯時會轉(zhuǎn)化為a10&bfalse 看a是否正確確定 boolean ret=(a10&bfalse 都看 boolean ret=(a10|btrue 看a是否正確確定 boolean ret=(a10|btrue 都看第二章 Java

15、基礎(chǔ)類型與運(yùn)算符 5 三目條件運(yùn)算符: opt1 ?opt2:opt3 表示opt1為真,值為opt2,否則為opt3。 6 賦值運(yùn)算符 注意賦值運(yùn)算符=與等值運(yùn)算符=的區(qū)別; a+=5與a=a+5不完全相等:如下列: (1)byte i=5;i+=1; (2)byte i=5;i=i+1; 第一種寫法編譯沒問題,由于 += 是java語言規(guī)定的運(yùn)算符, java編譯器會對它進(jìn)行特殊處理,因此可以正確編譯。 第二種編譯通不過。由于i+1運(yùn)算時會自動提升表達(dá)式的類型,所以結(jié)果是int型,再賦值給byte類型i時,編譯器將報告需要強(qiáng)制轉(zhuǎn)換類型的錯誤。第二章 Java基礎(chǔ)類型與運(yùn)算符第二章實(shí)例 實(shí)例

16、2自動轉(zhuǎn)換 實(shí)例3強(qiáng)制轉(zhuǎn)換 實(shí)例4運(yùn)算符 實(shí)例5各種進(jìn)制的轉(zhuǎn)換 實(shí)例6Java中的進(jìn)制與移位運(yùn)算符第三章 條件控制語句 本章主要介紹條件控制語句在程序中的應(yīng)用 主要包括:if控制語句、for語句、while 語句、do.while語句、和switch語句第三章 條件控制語句3.1 if 控制語句 if語句是Java中一個很關(guān)鍵的判斷語句,它的表達(dá)式格式為:if(表達(dá)式)語句塊 if.else語句是雙路選擇結(jié)構(gòu),它的語法形式: if(表達(dá)式) 語句塊1; else/else不可單獨(dú)存在必須與if搭配 語句塊2; 第三章 條件控制語句3.2 for循環(huán)語句 語句格式: 步進(jìn)語句 for(int i

17、=0;i=10;i+) System.out.println(i=+i); 初始化 循環(huán)條件3.3 while循環(huán)語句 while(boolean) 語句塊; -每循環(huán)一次就判斷括號中的代碼是不是為真,是真的話就繼續(xù)循環(huán),假的話就結(jié)束循環(huán)第三章 條件控制語句3.4 do.while循環(huán)語句 格式:do 語句塊; while(boolean); -無論如何都會先執(zhí)行一次再判斷條件是否為真,其它的和while循環(huán)規(guī)則一樣。3.5 switch語句第三章 條件控制語句switch(expt) case 常量1:語句塊1;break; case 常量1:語句塊1;break; . default: 語

18、句塊; 注: 1、switch后括號中的值必須是int,byte,char,short,枚舉類型的變量之一,其它類型的就不行了。 2、每個case后面的值必須是不相等的,而且必須是常量 3、如果每個case冒號后面的語句執(zhí)行完后沒有break,還會繼續(xù)執(zhí)行后面case里的語句,所以在每個case的語句結(jié)束后加一個break 4、default代表如果和所有case后的值都不匹配,就執(zhí)行這里的語句。無論default寫哪都是最后執(zhí)行第三章 條件控制語句添加知識(1): Math.random()表示的是產(chǎn)生一個0到1.0的double數(shù)。包含0不不含1。(2):import java.util.Random(); Randomr=new

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論