版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
知識實踐回顧1、編譯單元組織靈活,一個編譯單元可以有多個類,在實驗中是兩個類,即Computer和Tester,兩個類一個是計算機類,一個是測試類;2、一個類可以包括成員屬性和成員方法;成員屬性一般定義為private范圍,成員方法為public范圍;3、方法如定義為private,是內(nèi)部helper方法,數(shù)據(jù)隱藏部分,其他類無法直接使用知識實踐回顧1、編譯單元組織靈活,一個編譯單元可以有多個類,4、類定義好后,通過類進行對象的實例化和初始化。(對于成員變量初始化順序,1.聲明時初始化2.初始化代碼塊初始化3.構(gòu)造器初始化)如果沒有給類定義無參數(shù)構(gòu)造器,則編譯器創(chuàng)建對象不帶參數(shù)時,會隱式調(diào)用構(gòu)造,初始化成員變量為系統(tǒng)默認值(P133表6-3)。5、成員方法的訪問方式(在另一個類中)對象名.方法名
變量=對象名.方法名
//如果有返回值4、類定義好后,通過類進行對象的實例化和初始化。(對于成員變6、作用范圍,由小到大有四種,依次為private,default,protected,public其中對于類、屬性,和方法適用的如下:類:public,default,private(內(nèi)部類)屬性:四種都有,一般是private方法:public,default,private6、作用范圍,由小到大有四種,依次為private,def第5講面對對象編程基礎(chǔ)(下)西亞斯學(xué)院計算機系姜斌2009年第5講面對對象編程基礎(chǔ)(下)西亞斯學(xué)院計算機系姜斌第4章
類和對象
一、包二、靜態(tài)修飾符*三、最終類、最終屬性、最終方法(final)四、其他類庫里的常見類本章小結(jié)思考與練習(xí)
第4章類和對象
一、包一、包一、包1、包概念以及類庫中的包Java允許把多個類收集在一起成為一組,稱作包(package),管理類的一種組織形式。標準Java庫被分類成許多的包,其中包括java.lang、java.util和等等。(注意java.lang包是基本語言包,是默認導(dǎo)入包)按功能劃分分層的1、包概念以及類庫中的包Java允許把多個類收集在一起成為一2、系統(tǒng)默認包如果我們沒有定義包,編譯后所有class文件會當(dāng)前目錄中,Java會認為當(dāng)前目錄所有類在一個匿名包中,如果使用默認訪問范圍,這些類文件可以相互訪問。2、系統(tǒng)默認包如果我們沒有定義包,編譯后所有class文件會3、如何創(chuàng)建用戶包創(chuàng)建包,我們可以通過package語句創(chuàng)建自己的包,包名的命名約定1)可以多個英文單詞的名稱,但必須全小寫字母;2)當(dāng)存在多層時,可以參考域名的反向定義;Sputer_app.*;3)如果不是規(guī)范名稱,可轉(zhuǎn)為合法的名稱注意:package語句一定要在第一行,即import之前(課下可以練習(xí)一下類的訪問控制練習(xí),對照一下public和default范圍的區(qū)別)3、如何創(chuàng)建用戶包創(chuàng)建包,我們可以通過package語句創(chuàng)建4、包使用中的作用范圍例子:定義兩個包one和two,在包one中包含一個類A,在包two中B,C思考:對于default和public來修飾類,范圍有何區(qū)別? 對于default和public來修飾屬性和方法,范圍又有何區(qū)別?見例子4、包使用中的作用范圍例子:定義兩個包one和two,在包o二、靜態(tài)修飾符、靜態(tài)字段和方法二、靜態(tài)修飾符、靜態(tài)字段和方法1、靜態(tài)修飾符static稱為靜態(tài)修飾符,它可以修飾類中的屬性和方法。使用static(靜態(tài))關(guān)鍵字,靜態(tài)屬性具有如下的要求:
1)一種情形是只想用一個存儲區(qū)域來保存一個特定的數(shù)據(jù)——無論要創(chuàng)建多少個對象,甚至根本不創(chuàng)建對象;
2)被static修飾的屬性稱為靜態(tài)屬性,這類屬性一個最本質(zhì)的特點是:它們是類屬性,而不屬于任何一個類的具體對象。
1、靜態(tài)修飾符static稱為靜態(tài)修飾符,它可以修飾類2、靜態(tài)屬性靜態(tài)屬性的特點:靜態(tài)屬性類似于其他語言的全局變量;static換句話說,對于該類的任何一個具體對象而言,靜態(tài)屬性是一個公共的存儲單元,任何一個類的對象訪問它時,取到的都是相同的數(shù)值;同樣任何一個類的對象去修改它時,也都是在對同一個內(nèi)存單元做操作;靜態(tài)屬性的值也可通過對象獲得到。2、靜態(tài)屬性靜態(tài)屬性的特點:靜態(tài)變量,對應(yīng)一個類只有一份,對于成員變量,每個對象都有獨立的一份;例如:此處的count用于統(tǒng)計我們創(chuàng)建對象的個數(shù),它的初值為count=0;等我們創(chuàng)建三個對象后,它的值應(yīng)該為3。newnewnew俺是黃色的**類似于其他語言全局變量-Stringcolorintcount(static)Face(臉)俺是藍色的俺是紅色的
靜態(tài)屬性圖示靜態(tài)變量,對應(yīng)一個類只有一份,對于成員變量,每個對象都有獨立Color=“黃”ColorColorcountColor=“黃”ColorColorc3、靜態(tài)方法另一種情形是我們需要一個特殊的方法,它沒有與這個類的任何對象關(guān)聯(lián)。也就是說,即使沒有創(chuàng)建對象,也需要一個能調(diào)用的方法。(通過類名來訪問這個方法)static一項要的用途就是定義提供功能操作的方法,幫助我們在不必創(chuàng)建對象的前提下調(diào)用那個方法,調(diào)用方便。
3、靜態(tài)方法另一種情形是我們需要一個特殊的方法,它沒有與這個包括靜態(tài)變量和靜態(tài)常量。靜態(tài)變量常常用于類統(tǒng)計信息,靜態(tài)變量是可以通過一個類的對象訪問和更改的。靜態(tài)常量靜態(tài)常量是不能更改只能夠訪問。往往是一個類提供的特殊數(shù)值,例如,Math類中定義了一個靜態(tài)量:publicclassMath{……publicstaticfinaldoublePI=3.1.4159265358979323846;}4、靜態(tài)字段4、靜態(tài)字段
聲明一個方法為static至少有兩重含義:(1)使用這個方法時,應(yīng)該使用類名做前綴,而不是某一個具體的對象名;(Integer.parseInt(),Math.random()等等)(2)成員的方法是屬于某個對象的方法,每個對象都有自己的成員方法;而static的方法是屬于整個類的,它在內(nèi)存中的代碼段將隨著類分配和裝載,不被任何一個對象專有。5、靜態(tài)方法涵義聲明一個方法為static至少有兩重含義:5、(1)由于static方法是屬于整個類的,所以它不能操縱和處理對象的成員變量,而只能處理靜態(tài)變量;
反過來,成員方法可以訪問靜態(tài)變量或常量。
(2)同理,static方法中也不能訪問成員方法;
反過來,成員方法中可以訪問靜態(tài)方法。概括一下:靜態(tài)方法不可以訪問成員,反之可以6、靜態(tài)方法和成員變量、方法關(guān)系6、靜態(tài)方法和成員變量、方法關(guān)系7、main方法
main方法是特殊的靜態(tài)方法。通過它執(zhí)行程序,當(dāng)程序開始執(zhí)行時,還不存在任何對象。靜態(tài)方法被執(zhí)行,并構(gòu)造程序所需的對象。提示每個類都可以有一個main方法。這是對類進行單元測試的一個很方便技巧。
7、main方法main方法是特殊的靜態(tài)方法。8、靜態(tài)嵌套類一個static修飾的靜態(tài)的類也可以嵌套在另一個一般類中,稱為靜態(tài)嵌套類,可以理解為類的靜態(tài)成員。詳細的例子,見:書上4.13.8、靜態(tài)嵌套類一個static修飾的靜態(tài)的類也可以嵌套在另三、最終類、最終屬性和最終方法三、最終類、最終屬性和最終方法1、最終修飾符final是最終修飾符,它可以修飾類、屬性和方法。本身英文含義是“最終的”;它在java中意味,不能夠改變1、最終修飾符final是最終修飾符,它可以修飾類、屬性和方2、最終類
如果一個類被聲明為final,意味著它不能再派生出新的子類,不能作為父類被繼承。因此一個類不能既被聲明為abstract的,又被聲明為final的。被定義成final的類,通常是一些有特殊作用的、用來完成標準功能的類,將一個類定義為final則可以將它的內(nèi)容、屬性和功能固定下來。例如:類庫中很多類都是final的,如:System,String,其它基本類型的包裝類(Integer),以及Math類等等。2、最終類final定義的屬性,后來不能夠改變(重新賦值)許多程序設(shè)計語言把這種數(shù)據(jù)稱為“常量”或“常數(shù)”。常數(shù)主要應(yīng)用于下述兩個方面:
1)靜態(tài)常量,要加上static關(guān)鍵詞,可以通過類名直接引用;
注意:類庫很多類都定義有靜態(tài)常量,例如Math.PI
3、最終屬性final定義的屬性,后來不能夠改變(重新賦值)32)成員常量,在運行期初始化的一個值,我們不希望它發(fā)生變化可以把一個成員屬性定義為final(不能改變的)。注意:在對象被構(gòu)造時,這種字段必須被初始化。即,必須保證在每一個構(gòu)造方法結(jié)束之前其值已被設(shè)定。以后字段的值不能改變。例如:我們定義一個SCHOOL_NAME常量,如下:publicfinalStringSCHOOL_NAME=“sias”;2)成員常量,在運行期初始化的一個值,我們不希望它發(fā)生變化
所以要使用final方法,可能是出于對兩方面理由的考慮。第一個是為方法“上鎖”,防止任何繼承類改變它的本來含義。設(shè)計程序時,若希望一個方法的行為在繼承期間保持不變,而且不可被覆蓋或改寫,就可以采取這種做法。采用final方法的第二個理由是程序執(zhí)行的效率。
4、最終方法4、最終方法本講小結(jié)介紹了靜態(tài)類型的變量、方法,靜態(tài)變量如何在類似于全局變量,它的值如何被所有對象所共享;介紹了我們?nèi)绾问褂贸橄箢悂矶x現(xiàn)實事物中的抽象繼承關(guān)系;介紹了final關(guān)鍵詞定義的常量,以及如何通過它來定義最終方法和最終類;本講小結(jié)介紹了靜態(tài)類型的變量、方法,課后作業(yè) 做課后的4,5,6;把上一周的Employee類中多定義一個靜態(tài)變量count;通過它來統(tǒng)計對象產(chǎn)生的數(shù)量;定義一個交通工具(Transportation)的抽象類(可具有name和speed屬性),上一周我們通過Plane類定義了的飛機,再定義一個Vehicle(汽車類),使Plane和Vehicle類繼承交通工具類,Plane類具有獨特的屬性,如機翼(wing);Vehicle類可以具有輪胎(wheel),抽象方法自定。。課后作業(yè) 做課后的4,5,6;四、其他類庫里的常見類四、其他類庫里的常見類Java語言概述311.Object類-類中的“黃帝”是一個特殊的類,所有類(包括類庫中的和用開發(fā)者創(chuàng)作的類都屬于其子類,并繼承其內(nèi)容)Object類是所有類的根.每個類都以它來作為超類,所有的類,包括數(shù)組(arrays),都可實現(xiàn)覆蓋Object類中的方法.每個類都隱藏地擴展了此類,即等同于在類地聲明時加入,“extendsObject”Java語言概述311.Object類-類中的“黃帝”是一Java語言概述32Object類的方法常用的方法:StringtoString()--輸出關(guān)于對象的描述信息,可以被覆蓋返回對象的字符串表示。Object的方法返回一個字符串、包含該對象的類名、一個@字符和實例散列碼的十六進制表示。例如可以在Plane類中有toString方法。方法為:
publicStringtoString(){ return("speedis:"+speed+"\nlookis:"+look);}
Java語言概述32Object類的方法常用的方法:protected
Object
clone()
創(chuàng)建并返回此對象的一個副本。(在子類中不要依賴Object的這個方法。)
booleanequals(Object
obj)
指示某個其他對象是否與此對象“相等”。(在子類中不要依賴Object的這個方法。)protected
voidfinalize()
當(dāng)垃圾回收器確定不存在對該對象的更多引用時,由對象的垃圾回收器調(diào)用此方法。
Class
getClass()
返回一個對象的運行時類。
InthashCode()
返回該對象的哈希碼值。protected
Objectclone()
2.Scanner類Scanner類是一個可以使用正則表達式來分析基本類型和字符串的簡單文本掃描器。在java.util包下;使用分隔符模式將其輸入分解為標記,默認情況下該分隔符模式與空白匹配。然后可以使用不同的next方法將得到的標記轉(zhuǎn)換為不同類型的值。
可以構(gòu)造一個新的Scanner,它生成的值是從指定的輸入流掃描的。構(gòu)造器型構(gòu)為Scanner(InputStreamsource);2.Scanner類Scanner類是一個可以使用正則表達以下代碼使用戶能夠從System.in中讀取一個字符串值:Scannersc=newScanner(System.in);Stringi=sc.next();以下代碼使用戶能夠從System.in中讀取一個整數(shù):Scannersc=newScanner(System.in);inti=sc.nextInt();以下代碼使用戶能夠從System.in中讀取一個浮點值數(shù):Scannersc=newScanner(System.in);doublei=sc.nextDouble();以下代碼使用戶能夠從System.in中讀取一個字符串值3.InputStreamReder類-另外輸入方法InputStreamReader是字節(jié)流通向字符流的橋梁:它使用指定的字符集讀取字節(jié)并將其解碼為字符。為了達到最高效率,可要考慮在BufferedReader內(nèi)包裝InputStreamReader。
BufferedReaderbuf;buf=newBufferedReader(newInputStreamReader(System.in));3.InputStreamReder類-另外輸入方法InpBufferedReader類可以從字符輸入流中讀取文本,緩沖各個字符,從而提供字符、數(shù)組和行的高效讀??;提供下述讀取方法
intread()
讀取單個字符。
Intread(char[]
cbuf,int
off,int
len)
將字符讀入數(shù)組的某一部分。
String
readLine()
讀取一個文本行。BufferedReader類可以從字符輸入流中讀取文本,緩4.Calendar類是一個抽象類,具體實現(xiàn)類有GregorianCalendar,提供了世界上大多數(shù)國家/地區(qū)使用的標準日歷系統(tǒng)4.Calendar類是一個抽象類,具體實現(xiàn)類有Grego知識實踐回顧1、編譯單元組織靈活,一個編譯單元可以有多個類,在實驗中是兩個類,即Computer和Tester,兩個類一個是計算機類,一個是測試類;2、一個類可以包括成員屬性和成員方法;成員屬性一般定義為private范圍,成員方法為public范圍;3、方法如定義為private,是內(nèi)部helper方法,數(shù)據(jù)隱藏部分,其他類無法直接使用知識實踐回顧1、編譯單元組織靈活,一個編譯單元可以有多個類,4、類定義好后,通過類進行對象的實例化和初始化。(對于成員變量初始化順序,1.聲明時初始化2.初始化代碼塊初始化3.構(gòu)造器初始化)如果沒有給類定義無參數(shù)構(gòu)造器,則編譯器創(chuàng)建對象不帶參數(shù)時,會隱式調(diào)用構(gòu)造,初始化成員變量為系統(tǒng)默認值(P133表6-3)。5、成員方法的訪問方式(在另一個類中)對象名.方法名
變量=對象名.方法名
//如果有返回值4、類定義好后,通過類進行對象的實例化和初始化。(對于成員變6、作用范圍,由小到大有四種,依次為private,default,protected,public其中對于類、屬性,和方法適用的如下:類:public,default,private(內(nèi)部類)屬性:四種都有,一般是private方法:public,default,private6、作用范圍,由小到大有四種,依次為private,def第5講面對對象編程基礎(chǔ)(下)西亞斯學(xué)院計算機系姜斌2009年第5講面對對象編程基礎(chǔ)(下)西亞斯學(xué)院計算機系姜斌第4章
類和對象
一、包二、靜態(tài)修飾符*三、最終類、最終屬性、最終方法(final)四、其他類庫里的常見類本章小結(jié)思考與練習(xí)
第4章類和對象
一、包一、包一、包1、包概念以及類庫中的包Java允許把多個類收集在一起成為一組,稱作包(package),管理類的一種組織形式。標準Java庫被分類成許多的包,其中包括java.lang、java.util和等等。(注意java.lang包是基本語言包,是默認導(dǎo)入包)按功能劃分分層的1、包概念以及類庫中的包Java允許把多個類收集在一起成為一2、系統(tǒng)默認包如果我們沒有定義包,編譯后所有class文件會當(dāng)前目錄中,Java會認為當(dāng)前目錄所有類在一個匿名包中,如果使用默認訪問范圍,這些類文件可以相互訪問。2、系統(tǒng)默認包如果我們沒有定義包,編譯后所有class文件會3、如何創(chuàng)建用戶包創(chuàng)建包,我們可以通過package語句創(chuàng)建自己的包,包名的命名約定1)可以多個英文單詞的名稱,但必須全小寫字母;2)當(dāng)存在多層時,可以參考域名的反向定義;Sputer_app.*;3)如果不是規(guī)范名稱,可轉(zhuǎn)為合法的名稱注意:package語句一定要在第一行,即import之前(課下可以練習(xí)一下類的訪問控制練習(xí),對照一下public和default范圍的區(qū)別)3、如何創(chuàng)建用戶包創(chuàng)建包,我們可以通過package語句創(chuàng)建4、包使用中的作用范圍例子:定義兩個包one和two,在包one中包含一個類A,在包two中B,C思考:對于default和public來修飾類,范圍有何區(qū)別? 對于default和public來修飾屬性和方法,范圍又有何區(qū)別?見例子4、包使用中的作用范圍例子:定義兩個包one和two,在包o二、靜態(tài)修飾符、靜態(tài)字段和方法二、靜態(tài)修飾符、靜態(tài)字段和方法1、靜態(tài)修飾符static稱為靜態(tài)修飾符,它可以修飾類中的屬性和方法。使用static(靜態(tài))關(guān)鍵字,靜態(tài)屬性具有如下的要求:
1)一種情形是只想用一個存儲區(qū)域來保存一個特定的數(shù)據(jù)——無論要創(chuàng)建多少個對象,甚至根本不創(chuàng)建對象;
2)被static修飾的屬性稱為靜態(tài)屬性,這類屬性一個最本質(zhì)的特點是:它們是類屬性,而不屬于任何一個類的具體對象。
1、靜態(tài)修飾符static稱為靜態(tài)修飾符,它可以修飾類2、靜態(tài)屬性靜態(tài)屬性的特點:靜態(tài)屬性類似于其他語言的全局變量;static換句話說,對于該類的任何一個具體對象而言,靜態(tài)屬性是一個公共的存儲單元,任何一個類的對象訪問它時,取到的都是相同的數(shù)值;同樣任何一個類的對象去修改它時,也都是在對同一個內(nèi)存單元做操作;靜態(tài)屬性的值也可通過對象獲得到。2、靜態(tài)屬性靜態(tài)屬性的特點:靜態(tài)變量,對應(yīng)一個類只有一份,對于成員變量,每個對象都有獨立的一份;例如:此處的count用于統(tǒng)計我們創(chuàng)建對象的個數(shù),它的初值為count=0;等我們創(chuàng)建三個對象后,它的值應(yīng)該為3。newnewnew俺是黃色的**類似于其他語言全局變量-Stringcolorintcount(static)Face(臉)俺是藍色的俺是紅色的
靜態(tài)屬性圖示靜態(tài)變量,對應(yīng)一個類只有一份,對于成員變量,每個對象都有獨立Color=“黃”ColorColorcountColor=“黃”ColorColorc3、靜態(tài)方法另一種情形是我們需要一個特殊的方法,它沒有與這個類的任何對象關(guān)聯(lián)。也就是說,即使沒有創(chuàng)建對象,也需要一個能調(diào)用的方法。(通過類名來訪問這個方法)static一項要的用途就是定義提供功能操作的方法,幫助我們在不必創(chuàng)建對象的前提下調(diào)用那個方法,調(diào)用方便。
3、靜態(tài)方法另一種情形是我們需要一個特殊的方法,它沒有與這個包括靜態(tài)變量和靜態(tài)常量。靜態(tài)變量常常用于類統(tǒng)計信息,靜態(tài)變量是可以通過一個類的對象訪問和更改的。靜態(tài)常量靜態(tài)常量是不能更改只能夠訪問。往往是一個類提供的特殊數(shù)值,例如,Math類中定義了一個靜態(tài)量:publicclassMath{……publicstaticfinaldoublePI=3.1.4159265358979323846;}4、靜態(tài)字段4、靜態(tài)字段
聲明一個方法為static至少有兩重含義:(1)使用這個方法時,應(yīng)該使用類名做前綴,而不是某一個具體的對象名;(Integer.parseInt(),Math.random()等等)(2)成員的方法是屬于某個對象的方法,每個對象都有自己的成員方法;而static的方法是屬于整個類的,它在內(nèi)存中的代碼段將隨著類分配和裝載,不被任何一個對象專有。5、靜態(tài)方法涵義聲明一個方法為static至少有兩重含義:5、(1)由于static方法是屬于整個類的,所以它不能操縱和處理對象的成員變量,而只能處理靜態(tài)變量;
反過來,成員方法可以訪問靜態(tài)變量或常量。
(2)同理,static方法中也不能訪問成員方法;
反過來,成員方法中可以訪問靜態(tài)方法。概括一下:靜態(tài)方法不可以訪問成員,反之可以6、靜態(tài)方法和成員變量、方法關(guān)系6、靜態(tài)方法和成員變量、方法關(guān)系7、main方法
main方法是特殊的靜態(tài)方法。通過它執(zhí)行程序,當(dāng)程序開始執(zhí)行時,還不存在任何對象。靜態(tài)方法被執(zhí)行,并構(gòu)造程序所需的對象。提示每個類都可以有一個main方法。這是對類進行單元測試的一個很方便技巧。
7、main方法main方法是特殊的靜態(tài)方法。8、靜態(tài)嵌套類一個static修飾的靜態(tài)的類也可以嵌套在另一個一般類中,稱為靜態(tài)嵌套類,可以理解為類的靜態(tài)成員。詳細的例子,見:書上4.13.8、靜態(tài)嵌套類一個static修飾的靜態(tài)的類也可以嵌套在另三、最終類、最終屬性和最終方法三、最終類、最終屬性和最終方法1、最終修飾符final是最終修飾符,它可以修飾類、屬性和方法。本身英文含義是“最終的”;它在java中意味,不能夠改變1、最終修飾符final是最終修飾符,它可以修飾類、屬性和方2、最終類
如果一個類被聲明為final,意味著它不能再派生出新的子類,不能作為父類被繼承。因此一個類不能既被聲明為abstract的,又被聲明為final的。被定義成final的類,通常是一些有特殊作用的、用來完成標準功能的類,將一個類定義為final則可以將它的內(nèi)容、屬性和功能固定下來。例如:類庫中很多類都是final的,如:System,String,其它基本類型的包裝類(Integer),以及Math類等等。2、最終類final定義的屬性,后來不能夠改變(重新賦值)許多程序設(shè)計語言把這種數(shù)據(jù)稱為“常量”或“常數(shù)”。常數(shù)主要應(yīng)用于下述兩個方面:
1)靜態(tài)常量,要加上static關(guān)鍵詞,可以通過類名直接引用;
注意:類庫很多類都定義有靜態(tài)常量,例如Math.PI
3、最終屬性final定義的屬性,后來不能夠改變(重新賦值)32)成員常量,在運行期初始化的一個值,我們不希望它發(fā)生變化可以把一個成員屬性定義為final(不能改變的)。注意:在對象被構(gòu)造時,這種字段必須被初始化。即,必須保證在每一個構(gòu)造方法結(jié)束之前其值已被設(shè)定。以后字段的值不能改變。例如:我們定義一個SCHOOL_NAME常量,如下:publicfinalStringSCHOOL_NAME=“sias”;2)成員常量,在運行期初始化的一個值,我們不希望它發(fā)生變化
所以要使用final方法,可能是出于對兩方面理由的考慮。第一個是為方法“上鎖”,防止任何繼承類改變它的本來含義。設(shè)計程序時,若希望一個方法的行為在繼承期間保持不變,而且不可被覆蓋或改寫,就可以采取這種做法。采用final方法的第二個理由是程序執(zhí)行的效率。
4、最終方法4、最終方法本講小結(jié)介紹了靜態(tài)類型的變量、方法,靜態(tài)變量如何在類似于全局變量,它的值如何被所有對象所共享;介紹了我們?nèi)绾问褂贸橄箢悂矶x現(xiàn)實事物中的抽象繼承關(guān)系;介紹了final關(guān)鍵詞定義的常量,以及如何通過它來定義最終方法和最終類;本講小結(jié)介紹了靜態(tài)類型的變量、方法,課后作業(yè) 做課后的4,5,6;把上一周的Employee類中多定義一個靜態(tài)變量count;通過它來統(tǒng)計對象產(chǎn)生的數(shù)量;定義一個交通工具(Transportation)的抽象類(可具有name和speed屬性),上一周我們通過Plane類定義了的飛機,再定義一個Vehicle(汽車類),使Plane和Vehicle類繼承交通工具類,Plane類具有獨特的屬性,如機翼(wing);Vehicle類可以具有輪胎(wheel),抽象方法自定。。課后作業(yè) 做課后的4,5,6;四、其他類庫里的常見類四、其他類庫里的常見類Java語言概述691.Object類-類中的“黃帝”是一個特殊的類,所有類(包括類庫中的和用開發(fā)者創(chuàng)作的類都屬于其子類,并繼承其內(nèi)容)Object類是所有類的根.每個類都以它來作為超類,所有的類,包括數(shù)組(arrays),都可實現(xiàn)覆蓋Object類中的方法.每個類都隱藏地擴展了此類,即等同于在類地聲明時加入,“extendsObject”Java語言概述311.Object類-類中的“黃帝”是一Java語言概述70Object類的方法常用的方法:StringtoString()--輸出關(guān)于對象的描述信息,可以被覆蓋返回對象的字符串表示。Object的方法返回一個字符串、包含該對象的類名、一個@字符和實例散列碼的十六進制表示。例如可以在Plane類中有toString方法。方法為:
publicStringtoString(){ return("speedis:"+speed+"\nlookis:"+look);}
Java語言概述32Object類的方法常用的方法:protected
Object
clone()
創(chuàng)建并返回此對象的一個副本。(在子類中不要依賴Object的這個方法。)
booleanequals(Object
obj)
指示某個其他對象是否與此對象“相等”。(在子類中不要依賴Object的這
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年產(chǎn)品加工承攬合同經(jīng)典版(三篇)
- 2025年二年級下學(xué)期班主任個人總結(jié)(2篇)
- 2025年個人耐用消費品貸款的合作協(xié)議(三篇)
- 2025年臨時雇傭合同標準范文(2篇)
- 攝影棚專業(yè)裝修合同模板
- 污水調(diào)節(jié)液堿運輸服務(wù)合同
- 保險代理居間協(xié)議簡本
- 污水處理廠裝修協(xié)議
- 健身房預(yù)制塊配送協(xié)議
- 汽車制造廢粉運輸合同
- 2024-2025學(xué)年陜西省西安市浐灞區(qū)數(shù)學(xué)三年級第一學(xué)期期末統(tǒng)考試題含解析
- 2025年信息系統(tǒng)集成服務(wù)公司組織架構(gòu)和業(yè)務(wù)流程
- 護理人員的職業(yè)安全防護
- 西藏自治區(qū)拉薩市城關(guān)區(qū)多校2024-2025學(xué)年六年級上學(xué)期期中英語試題
- 胸外科講課全套
- 2023年海南省公務(wù)員錄用考試《行測》真題卷及答案解析
- 公安法制培訓(xùn)
- 電力工程施工售后保障方案
- 中國心力衰竭診斷和治療指南2024解讀(完整版)
- 《鋼鐵是怎樣練成的》閱讀任務(wù)單及答案
- 新人教版高中數(shù)學(xué)必修第二冊第六章平面向量及其應(yīng)用教案 (一)
評論
0/150
提交評論