Java面向?qū)ο蟪绦蛟O(shè)計(jì)第4章-類與對(duì)象_第1頁
Java面向?qū)ο蟪绦蛟O(shè)計(jì)第4章-類與對(duì)象_第2頁
Java面向?qū)ο蟪绦蛟O(shè)計(jì)第4章-類與對(duì)象_第3頁
Java面向?qū)ο蟪绦蛟O(shè)計(jì)第4章-類與對(duì)象_第4頁
Java面向?qū)ο蟪绦蛟O(shè)計(jì)第4章-類與對(duì)象_第5頁
已閱讀5頁,還剩58頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件第4章 類與對(duì)象主講:趙建邦辦公室:信息學(xué)院202E-mail:信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件2本章主要內(nèi)容n類類n對(duì)象n參數(shù)傳值n對(duì)象組合nstatic關(guān)鍵字nthis關(guān)鍵字n包nimport關(guān)鍵字n類包裝 jar文件n難點(diǎn):n參數(shù)傳值,對(duì)象組合n包和import語句信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件34.1 編程語言的發(fā)展n面向機(jī)器語言n包括機(jī)器語言、匯編語言n代碼量龐大,對(duì)不同機(jī)器編寫不同指令n優(yōu)點(diǎn):可執(zhí)行文件小,執(zhí)行速度快n面向過程語言n按照流程化的思想來組織,不符合人的思維習(xí)慣,重用率低,維護(hù)困難,用函數(shù)

2、調(diào)用實(shí)現(xiàn)代碼重用,信息完全暴露,很難實(shí)現(xiàn)大型程序信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件44.1 編程語言的發(fā)展n面向?qū)ο笳Z言n按照類和對(duì)象的思想來組織:將數(shù)據(jù)以及數(shù)據(jù)的操作封裝在一個(gè)單獨(dú)的數(shù)據(jù)結(jié)構(gòu)中n抽象:強(qiáng)調(diào)實(shí)體本質(zhì)、內(nèi)在的屬性n封裝性:封裝性是保證軟件部件具有優(yōu)良的模塊性的基礎(chǔ),將說明與實(shí)現(xiàn)分開n繼承性:不同級(jí)別上促進(jìn)了共享n多態(tài)性:同一操作作用于不同的類的實(shí)例,將產(chǎn)生不同的執(zhí)行結(jié)果信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件54.1 編程語言的發(fā)展 (作者) (圖靈獎(jiǎng))n1957 Fortran John Bacus 1997n1967 Simula D.J Dahl 20

3、01 K. Nygaard n1968 Pascal Niklaus wirth 1984n1972 C Ken Thompson 1983 D.M Ritchie n19801995 C+ Bjarne Stroustrupn1971 Smalltalk Alan Kay 2003n1995 Java James Gosling信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件64.2 類n“萬物皆為對(duì)象”Alan Kayn現(xiàn)實(shí)世界中的任一客觀實(shí)體:n有一個(gè)名字(ID)用來標(biāo)識(shí)n有一組屬性來描述其特征n有一組方法來實(shí)現(xiàn)其功能n類是對(duì)具有相似屬性對(duì)象的抽象n類是實(shí)例化對(duì)象的模板n對(duì)象是類的實(shí)例信

4、息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件74.2.1 類的聲明n類的實(shí)現(xiàn)包括:類聲明和類體n類實(shí)現(xiàn)的格式:class 類名 類體的內(nèi)容n注意類名的命名約定:n拉丁字母的首字母使用大寫: Hello、Timen復(fù)合詞中的每個(gè)單詞首字母大寫:HelloWorld和之間的內(nèi)容稱作類體信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件84.2.2 類體n類體包括兩部分:n變量的聲明,用來刻畫屬性n方法的定義,用來刻畫功能信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件94.2.3 成員變量和局部變量n不同變量的定義:n成員變量:變量聲明部分所聲明的變量n局部變量:方法體中聲明的變量和方法 體的參數(shù)

5、n變量的類型:n基本類型(整數(shù)、浮點(diǎn)、字符、邏輯)n引用類型(數(shù)組、對(duì)象、接口)信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件104.2.3 成員變量和局部變量n變量的有效范圍n成員變量在整個(gè)類內(nèi)部有效,并且有效性與它在類體中書寫的先后位置無關(guān)n方法的參數(shù)在整個(gè)方法內(nèi)部有效n方法內(nèi)的局部變量從聲明它的位置之后開始有效,并且僅限于聲明它的復(fù)合語句或者循環(huán)體n例P57中,class A 、class 梯形注意:for循環(huán)中變量的有效性與C語言不同信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件114.2.3 成員變量和局部變量n成員變量再細(xì)分:n實(shí)例變量、類變量n類變量:成員變量聲明時(shí),用sta

6、tic關(guān)鍵 字給予修飾,也稱靜態(tài)變量信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件124.2.3 成員變量和局部變量n成員變量的隱藏n如果局部變量的名字與成員變量的名字相同,則成員變量被隱藏,即這個(gè)成員變量在這個(gè)方法內(nèi)暫時(shí)失效。P58 class 三角形信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件134.2.4 方法n類似于類的實(shí)現(xiàn)結(jié)構(gòu),方法的實(shí)現(xiàn)也包括兩部分:方法聲明和方法體方法聲明部分 方法體的內(nèi)容n方法起名習(xí)慣和類名不同,首個(gè)字母約定使用小寫信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件144.2.4 方法n方法的聲明格式:n返回值類型 方法名(參數(shù)1,參數(shù)2,)n當(dāng)一個(gè)方法不需

7、要返回值時(shí),返回類型為voidn方法體信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件154.2.5 方法重載n一個(gè)類中可以有多個(gè)方法具有相同的名字,但這些方法的參數(shù)必須不同:n參數(shù)的個(gè)數(shù)不同n參數(shù)的類型不同n注意:方法的返回類型不參與比較: 如果兩個(gè)方法名字相同,即使類型 不同,也必須保證參數(shù)不同信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件164.2.6 構(gòu)造方法n構(gòu)造方法是一種特殊方法,名字必須與類名相同,沒有返回值類型n構(gòu)造方法可以重載信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件174.2.7 類方法和實(shí)例方法n方法聲明時(shí),方法類型前面不加關(guān)鍵字static修飾的是實(shí)例方法、加s

8、tatic修飾的是類方法(靜態(tài)方法)信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件184.2.8 幾個(gè)值得注意的問題n對(duì)成員變量的操作只能放在方法中,方法可以對(duì)成員變量的操作只能放在方法中,方法可以對(duì)成員變量和該方法體中聲明的局部變量進(jìn)行對(duì)成員變量和該方法體中聲明的局部變量進(jìn)行操作操作n需要注意的是:實(shí)例方法既能對(duì)類變量操作也需要注意的是:實(shí)例方法既能對(duì)類變量操作也能對(duì)實(shí)例變量操作,而類方法只能對(duì)類變量進(jìn)能對(duì)實(shí)例變量操作,而類方法只能對(duì)類變量進(jìn)行操作行操作n一個(gè)類中的方法可以互相調(diào)用,實(shí)例方法可以一個(gè)類中的方法可以互相調(diào)用,實(shí)例方法可以調(diào)用該類中的其它方法;類中的類方法只能調(diào)調(diào)用該類中的其它

9、方法;類中的類方法只能調(diào)用該類的類方法,不能調(diào)用實(shí)例方法用該類的類方法,不能調(diào)用實(shí)例方法 參照本節(jié)的例子理解以上內(nèi)容參照本節(jié)的例子理解以上內(nèi)容信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件194.3 對(duì)象n類是創(chuàng)建對(duì)象的模板,對(duì)象是類創(chuàng)建的實(shí)例n如何創(chuàng)建對(duì)象?n創(chuàng)建對(duì)象分為聲明對(duì)象和為對(duì)象分配內(nèi)存兩部分n聲明格式: “類名 對(duì)象名;”n例如:People zhangPing;n使用new關(guān)鍵字分配內(nèi)存:nzhangPing = new People();nPeople zhangPing = new People(); /實(shí)際包括了聲明和分配內(nèi)存兩部分信息工程學(xué)院本科課程信息工程學(xué)院本科課程

10、整理課件204.3.1 創(chuàng)建對(duì)象n對(duì)象的內(nèi)存模型n聲明后的對(duì)象變量是一個(gè)空對(duì)象,不能使用n分配內(nèi)存后,即使用new語句以后,對(duì)象的成員變量被分配內(nèi)存空間,并對(duì)成員變量進(jìn)行初始化;并且,將返回一個(gè)引用給對(duì)象變量n創(chuàng)建多個(gè)不同對(duì)象的時(shí)候,這些對(duì)象具有不同的引用和內(nèi)存空間信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件214.3.2 使用對(duì)象n通過運(yùn)算符“.”來實(shí)現(xiàn)對(duì)類中變量的訪問和方法的調(diào)用n體現(xiàn)封裝n類體內(nèi)如何操作成員變量,在類體內(nèi)是看不到的,類體外看到的只是方法的接口n但是,方法所用到的局部變量,包括參數(shù)和方法體內(nèi)的變量,在使用之前需要賦值n例:4.3信息工程學(xué)院本科課程信息工程學(xué)院本科課程整

11、理課件224.3.3 對(duì)象的引用和實(shí)體n聲明一個(gè)對(duì)象之后,在棧中為其分配引用;Java的對(duì)象在堆(heap)中分配內(nèi)存,這些內(nèi)存空間稱為對(duì)象的實(shí)體n通過引用,可以調(diào)用對(duì)象的屬性和方法n一個(gè)類創(chuàng)建的兩個(gè)對(duì)象,如果具有相同的引用,那么就具有完全相同的實(shí)體n沒有實(shí)體的對(duì)象稱作空對(duì)象,編譯器對(duì)空對(duì)象不作檢查,但是它不能被使用信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件234.4 參數(shù)傳值nJava中,方法的所有參數(shù)都是“傳值”,即方法中參數(shù)變量的值是調(diào)用者指定值的一個(gè)拷貝 DataType a;/a已經(jīng)被賦值 void function(DataType c) n基本類型參數(shù)的傳值n引用類型參數(shù)的

12、傳值信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件244.4.1 基本類型參數(shù)的傳值n原則:基本數(shù)據(jù)類型的參數(shù),向該參數(shù)傳遞的值的級(jí)原則:基本數(shù)據(jù)類型的參數(shù),向該參數(shù)傳遞的值的級(jí)別不可以高于該參數(shù)的級(jí)別別不可以高于該參數(shù)的級(jí)別 n只要值在Main函數(shù)中沒變, a的值不管怎么傳都不回變,這是因?yàn)閍是傳值,而這個(gè)值是a的一個(gè)拷貝,a的值在傳遞后的改變只是改變了a的拷貝的內(nèi)容,并沒有改變真正的a的值int a=3的拷貝!返回信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件254.4.2 引用類型參數(shù)的傳值n當(dāng)參數(shù)是引用類型時(shí),當(dāng)參數(shù)是引用類型時(shí),“傳值傳值”傳遞的傳遞的是變量中存放的是變量中存放的

13、“引用引用”,而不是變量,而不是變量所引用的實(shí)體所引用的實(shí)體n例4.5信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件264.4.3 可變參數(shù)n在聲明方法時(shí)不給出參數(shù)列表中某項(xiàng)直至最后一項(xiàng)參數(shù)的名字和個(gè)數(shù),但這些參數(shù)的類型必須一致。使用“”表示若干個(gè)參數(shù),它們的類型必須相同npublic void f(int x )npublic void f(double d, int x);n用法類似于數(shù)組與for的新增功能,回憶章節(jié)3.7信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件274.4.4 有理數(shù)的類封裝n面向?qū)ο蟮木幊?,核心思想之一是將?shù)據(jù)和對(duì)數(shù)據(jù)的操作封裝在一起,從而形成包裝類,通過類創(chuàng)建

14、具體的對(duì)象,對(duì)象調(diào)用方法,實(shí)現(xiàn)更簡潔的計(jì)算效果n本節(jié)對(duì)有理數(shù)(Rational)進(jìn)行封裝,是面向?qū)ο蟪绦蛟O(shè)計(jì)的一個(gè)簡單應(yīng)用信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件284.5 對(duì)象的組合n一個(gè)類的成員變量可以是Java允許的任何數(shù)據(jù)類型,即一個(gè)類的成員變量可以是其它類的對(duì)象,甚至可以是該類的自身對(duì)象n一個(gè)類的成員變量可以由若干個(gè)類組成,或者說該類的對(duì)象可以使若干對(duì)象的組合n例 4.7信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件29舉例:對(duì)象的組合信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件304.6 static關(guān)鍵字n成員變量分為:類變量和實(shí)例變量n用static修飾的變量為類

15、變量n不用static修飾的變量為實(shí)例變量n方法分為:類方法和實(shí)例方法n用static修飾的方法為類方法n不用static修飾的方法為實(shí)例方法n調(diào)用原則:n實(shí)例方法可以調(diào)用所有方法n類方法只能調(diào)用類方法信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件314.6.1 實(shí)例變量和類變量n區(qū)別1:n一個(gè)類可以創(chuàng)建多個(gè)不同的對(duì)象,每個(gè)對(duì)象的實(shí)例變量將被分配不同的內(nèi)存空間;如果一個(gè)類中定義了類變量,那么,所有的類變量僅分配相同的類變量,一個(gè)對(duì)象改變了類變量,則徹底改變n也就是說,對(duì)象共享類變量n區(qū)別2:n類變量在沒有創(chuàng)建對(duì)象的情況下已經(jīng)加載到內(nèi)存,直到程序退出才釋放所占用的內(nèi)存n類變量不僅可以通過對(duì)象訪

16、問,也可以通過類名訪問信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件324.6.2 實(shí)例方法和類方法n區(qū)別1:n對(duì)象創(chuàng)建后才分配實(shí)例方法入口n對(duì)象創(chuàng)建前已經(jīng)分配類方法入口n區(qū)別2:n所有對(duì)象都不存在時(shí),實(shí)例方法的入口地址撤銷n程序退出時(shí),類方法的入口地址才被取消nstatic方法僅能調(diào)用其它的static方法、僅能訪問static數(shù)據(jù),不能以任何形式引用this、super信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件33難點(diǎn)1:成員變量被隱藏nP58,對(duì)于類體中的方 法,如果局部變量名字 和成員變量名字相同, 則成員變量被隱藏n想仍然在這種情況下 使用成員變量,需要thisnP58中的兩

17、個(gè)例子, 以及習(xí)題4.8信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件34難點(diǎn)2:成員變量初始化n聲明類的成員變量 時(shí)可以同時(shí)賦予初值nP62,class A,注意不 能用單獨(dú)的賦值語句n通過構(gòu)造方法初始化n生成對(duì)象時(shí)已完成n構(gòu)造方法可以重載n通過其它方法初始化n必須通過對(duì)象調(diào)用方法信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件35難點(diǎn)3:參數(shù)傳值n發(fā)生在main()方法或者其它方法調(diào)用有參數(shù)的方法的時(shí)候n基本類型“傳值”:方法中參數(shù)變量的值是調(diào)用者指定值的一個(gè)拷貝,方法可以改變參數(shù)的值,但是不能改變使用的變量的值n引用類型“傳值”:傳遞的是變量中存放的“引用”nP72-73信息工程學(xué)院本

18、科課程信息工程學(xué)院本科課程整理課件364.7 this關(guān)鍵字nthis關(guān)鍵字在Java中表示某個(gè)對(duì)象nthis可以出現(xiàn)在實(shí)例方法和構(gòu)造方法中,不能出現(xiàn)在類方法中:因?yàn)轭惙椒ū徽{(diào)用時(shí)允許對(duì)象沒有被生成n在構(gòu)造方法中使用this :例4.10n在實(shí)例方法中使用this,代表正在調(diào)用該方法的當(dāng)前對(duì)象n實(shí)例方法可以操作成員變量:n實(shí)例成員變量默認(rèn)格式:this.成員變量n類成員變量默認(rèn)格式:類名.成員變量n通常情況下可以省略上面的“this.”和“類名.”,在省略的過程中需要注意:成員變量可能被隱藏信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件374.8 包n包的作用:解決命名沖突,有效管理項(xiàng)目中的

19、類和接口n包語句:n必須做為源文件中的第一句程序代碼n一個(gè)源文件最多只能有一條包語句n如果在代碼中沒有書寫package語句,則該類將被加入到默認(rèn)包(無名包)中,默認(rèn)包無法被其它的包引用信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件384.8.1 包語句n通過關(guān)鍵字package聲明包語句npackage 包名;n如果源文件中省略了包語句,源文件中所定義的類被默認(rèn)為無名包的類n包名可以是一個(gè)合法的標(biāo)示符,也可以是由若干個(gè)標(biāo)示符通過“.”拼接而來npackage sunrise;npackage ;nJava不允許使用java作為包名的第一部分信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件3

20、94.8.2 有包名的類的存儲(chǔ)n原則上來講,源文件可以存放在任何文件夾里n有包名的字節(jié)碼文件只能存放在包名對(duì)應(yīng)的文件夾里,否則無法運(yùn)行npackage tom.jiafei;n.class文件只能存放在“tomjiafei”目錄下信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件404.8.2 有包名的類的編譯與運(yùn)行n1、將例4.11的兩個(gè)文件保存在“tomjiafei”目錄下,在當(dāng)前目錄編譯,字節(jié)碼文件自動(dòng)生成在當(dāng)前文件夾信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件414.8.2 有包名的類的編譯與運(yùn)行n2、在任意目錄下編譯源文件,然后將字節(jié)碼文件拷貝入“tomjiafei”目錄下,運(yùn)行命

21、令同上頁相同信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件424.8.2 有包名的類的編譯與運(yùn)行n3、在任意目錄下編譯源文件,命令為: “javac d 包的父目錄 源文件全路徑”信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件434.8.3 規(guī)范自己的編程習(xí)慣信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件444.9 import語句n一個(gè)類可能需要另一個(gè)類聲明的對(duì)象作為自己的成員或方法中的局部變量,如果這兩個(gè)類在同一個(gè)包中,當(dāng)然沒有問題。 n如果一個(gè)類想要使用的那個(gè)類和它不在一個(gè)包中,要使用import語句完成使命。n一個(gè)Java源文件可以有多個(gè)import語句,必須寫在package語

22、句和類的定義之間信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件454.9 import語句n引入自定義包中的類n1、更新classpath,將包名所對(duì)應(yīng)目錄的父目錄添加到classpath變量中n2、“.;”表示可以加載應(yīng)用程序當(dāng)前目錄中的無名包類,而且當(dāng)前子目錄下的子孫目錄都可以作為包的名字來使用n使用無包名的類n想使用無包名的類,只要將這個(gè)無包名的類的字節(jié)碼和當(dāng)前類保存在同一目錄即可信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件464.9 import語句n避免類名混淆(解決方法:不要省略包名)n區(qū)分無包名和有包名的類: 假如一個(gè)源文件使用了無包名的A類和一個(gè)有包名的A類n使用“imp

23、ort 包名.A;” : 生成“A”的對(duì)象時(shí),如果省略包名,”A a=new A();” 則生成的a是A的對(duì)象n使用“import 包名.*;” : 生成“A”的對(duì)象時(shí),如果省略包名,”A a=new A();” 則生成的a是A的對(duì)象n如果一個(gè)源文件引入兩個(gè)包中同名的類,不允許省略包名: 包1.A a1=new 包1.A(); 包2.A a2=new 包2.A();信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件474.10 訪問權(quán)限n類創(chuàng)建的對(duì)象通過“.”訪問變量、調(diào)用方法,但對(duì)象操作自己的變量和使用類中的方法是有一定限制的。n訪問限制修飾符(關(guān)鍵字)有private、protected和p

24、ublic信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件484.10.1 私有變量和私有方法n用private修飾的成員變量和方法稱為私有變量和私有方法n只有在本類中創(chuàng)建該類的對(duì)象時(shí),這個(gè)對(duì)象才能訪問私有成員和私有方法n例4.16n良好的編程習(xí)慣:n對(duì)于類中的所有變量,適當(dāng)設(shè)計(jì)改變或者讀取它們的方法,盡量不要在類外用“.變量”方式信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件494.10.2 共有變量和共有方法n用public修飾的成員變量和方法稱為共有變量和共有方法n類所創(chuàng)建的對(duì)象在其它類中均可以訪問該對(duì)象的public變量和public方法n對(duì)于public類變量和public類方法,

25、如果該類在其它類中創(chuàng)建了對(duì)象,也可以通過類名來訪問這些類變量和類方法信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件504.10.3 友好變量和友好方法n不用任何訪問限制修飾符的成員變量和方法,稱為友好變量和友好方法n當(dāng)在其它類(例B)中創(chuàng)建了一個(gè)類(例A)的對(duì)象后,如果A和B在同一個(gè)包中,那么A的對(duì)象能訪問自己的友好對(duì)象和友好方法,否則不能訪問信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件514.10.4 受保護(hù)的成員變量和方法n用protected修飾的成員變量和方法稱為受保護(hù)的成員變量和方法n當(dāng)在其它類(例B)中創(chuàng)建了一個(gè)類(例A)的對(duì)象后,如果A和B在同一個(gè)包中,那么A的對(duì)象能訪問自

26、己的友好對(duì)象和友好方法,否則不能訪問n以后會(huì)涉及“受保護(hù)”和“友好”之間的區(qū)別信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件524.10小結(jié):訪問權(quán)限訪問權(quán)限訪問權(quán)限同類同類同包同包不同包不同包Private可以不可以不可以友好的友好的可以可以不可以Protected可以可以不可以Public可以可以可以信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件534.10.5 public類與友好類n在類聲明時(shí),用public修飾的類為public類,public類可以在任何一個(gè)其它的類中創(chuàng)建對(duì)象n如果一個(gè)類不加public修飾,則稱為友好類,使用友好類之前,必須保證它們?cè)谕粋€(gè)包中n不能用prot

27、ected和private修飾類信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件54淺談main()方法npublic static void main(String args)nmain()方法由JVM直接調(diào)用,所以用publicn所在的類不需要產(chǎn)生任何對(duì)象,所以用staticn不需要返回值,所以用voidn為什么main? -這是規(guī)定n有一個(gè)String類型的參數(shù),是字符串?dāng)?shù)組,該字符串的名稱“args”可以改變,但為了和Sun Java規(guī)范范例保持一致,不建議修改,作用是接受命令行的輸入,用空格隔開nStatic代碼塊的內(nèi)容會(huì)在main()之前調(diào)用信息工程學(xué)院本科課程信息工程學(xué)院本科課程

28、整理課件55淺談main()方法信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件564.11 基本類型的類包裝nDouble類和Float類n構(gòu)造方法:Double(double num); Float(float num);n返回double和float基本類型數(shù)據(jù): doubleValue()方法 floatValue()方法信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件574.11 基本類型的類包裝nByte、Short、Integer和Long類n構(gòu)造方法:Byte(byte num); Short(short num); Integer(int num); Long(long nu

29、m);n返回基本類型數(shù)據(jù): byteValue()方法 shortValue()方法 intValue()方法 longValue()方法信息工程學(xué)院本科課程信息工程學(xué)院本科課程整理課件584.11 基本類型的類包裝nCharacter類nCharacter類實(shí)現(xiàn)了對(duì)char基本類型的包裝n構(gòu)造方法:Character(char c);n返回基本數(shù)據(jù)的方法:charValue();n其它方法:nboolean isDigit(char ch):判斷ch是否數(shù)字字符nboolean isLetter(char ch):判斷ch是否字母字符nboolean isLetterOrDigit(char ch):判斷ch是否數(shù)字或字母nboolean isLowerCase(char ch):判斷ch是否小寫字母nBoolean isUpperCase(char ch):判斷ch是否大寫字母nChar toLowerCase(char ch):返回ch的小寫形式nCh

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論