freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

javaee基礎(chǔ)教程第4章類(lèi)與對(duì)象的基本概念ppt(已修改)

2024-10-30 14:25 本頁(yè)面
 

【正文】 清華大學(xué)出版社 JavaEE基礎(chǔ)教程 第 4章類(lèi)與對(duì)象的基本概念 類(lèi)的訪(fǎng)問(wèn)權(quán)限與包的概念 Java EE基礎(chǔ)教程 2 2021年 11月 10日星期三 返回 ?類(lèi)是實(shí)現(xiàn) Java面向?qū)ο蟪绦蛟O(shè)計(jì)的基礎(chǔ),是對(duì)基本數(shù)據(jù)類(lèi)型的擴(kuò)充。類(lèi)封裝了對(duì)象的行為和屬性,它是具有相同特征的同類(lèi)對(duì)象的抽象模型( temp1ate),利用這個(gè)抽象模型可以構(gòu)造具體的實(shí)例對(duì)象( instance)。 Java EE基礎(chǔ)教程 3 2021年 11月 10日星期三 ?對(duì)象是 Java程序中最核心、最基礎(chǔ)的部分。對(duì)象在現(xiàn)實(shí)生活中是很普通的概念。所有的物體都可以被視為對(duì)象,大到宇宙,小到原子,都可以將其看作是對(duì)象。我們時(shí)常與對(duì)象在打交道,我們用的鋼筆、騎的自行車(chē)、乘的公交車(chē)等。而我們經(jīng)常見(jiàn)到的卡車(chē)、公交車(chē)、小轎車(chē)等都會(huì)涉及以下幾個(gè)重要的物理量:可乘載的人數(shù)、運(yùn)行速度、發(fā)動(dòng)機(jī)的排量、耗油量、自重、輪子數(shù)目等。另外,還有加速、減速、剎車(chē)、轉(zhuǎn)彎、播放音樂(lè)等幾個(gè)重要的功能,這些功能稱(chēng)作是他們具有的方法。一個(gè)對(duì)象具有本身的屬性即特征,這些特征決定對(duì)象的狀態(tài),對(duì)象還可通過(guò)自己的行為,不斷改變自己的狀態(tài)。 Java EE基礎(chǔ)教程 4 2021年 11月 10日星期三 ?類(lèi)與對(duì)象的關(guān)系猶如圖紙與零件關(guān)系,先有圖紙后有零件,圖紙描述了零件的共同特征,零件是按圖紙制造出來(lái)的。在程序中只能有類(lèi)的一個(gè)定義,但該類(lèi)可以有多個(gè)實(shí)例對(duì)象。在 Java編程語(yǔ)言中使用 new運(yùn)算符實(shí)例化對(duì)象。 ?要學(xué)習(xí) Java 編程就必須首先學(xué)會(huì)怎樣去寫(xiě)類(lèi),即怎樣用 Java 的語(yǔ)法去描述對(duì)象共有的屬性和功能。屬性通過(guò)變量來(lái)刻畫(huà),功能通過(guò)方法來(lái)體現(xiàn)。類(lèi)把屬性和對(duì)屬性的操作封裝成一個(gè)整體。 Java程序設(shè)計(jì)就是從類(lèi)的設(shè)計(jì)開(kāi)始的。 ?基于對(duì)象的編程更加符合人的思維模式,編寫(xiě)的程序更加健壯和強(qiáng)大。更重要的是,面向?qū)ο缶幊坦膭?lì)創(chuàng)造性的程序設(shè)計(jì)。 Java EE基礎(chǔ)教程 5 2021年 11月 10日星期三 ? ?類(lèi)由關(guān)鍵詞 calss來(lái)定義。一個(gè)類(lèi)的定義包括兩個(gè)部分:類(lèi)聲明和類(lèi)體。類(lèi)體的內(nèi)容由兩部分構(gòu)成,一部分是變量的定義,用來(lái)刻畫(huà)屬性;另一部分是方法的定義,用來(lái)描述功能。 Java EE基礎(chǔ)教程 6 2021年 11月 10日星期三 ? 類(lèi)的定義的基本格式為: [public][abstract|final] class className [extends superclassName] [implements interfaceNameList] { [public | protected | private ] [static] [final] [transient] [volatile] type variableName。 //成員變量 [public | protected | private ] [static] [final | abstract] [native] [synchronized] returnType methodName([paramList]) [throws exceptionList] { statements } //成員方法 } ? 其中,修飾符 public、 abstract、 final說(shuō)明了類(lèi)的屬性, className為類(lèi)名, superclassName為類(lèi)的父類(lèi)的名字, interfaceNameList為類(lèi)所實(shí)現(xiàn)的接口列表。 Java EE基礎(chǔ)教程 7 2021年 11月 10日星期三 ? 1.類(lèi)的成員變量 在類(lèi)中聲明的變量就是成員變量,作用域是整個(gè)類(lèi)。類(lèi)的成員變量分為 類(lèi)成員變量和實(shí)例成員變量。類(lèi)的成員變量的聲明方式如下: [public | protected | private ] [static] [final] [transient] [volatile] type variableName。 其中: public:公有變量。 protected:保護(hù)變量。 private:私有變量。 static: 靜態(tài)變量(類(lèi)成員變量),相對(duì)于實(shí)例成員變量。 final: 常量。 transient: 暫時(shí)性變量,用于對(duì)象存檔。 volatile: 貢獻(xiàn)變量,用于并發(fā)線(xiàn)程的共享。 Java EE基礎(chǔ)教程 8 2021年 11月 10日星期三 ?2.類(lèi)的成員方法 ?成員方法描述對(duì)象所具有的功能或操作,反映對(duì)象的行為,是具有某種相對(duì)獨(dú)立功能的程序模塊。一個(gè)類(lèi)或?qū)ο罂梢杂卸鄠€(gè)成員方法,對(duì)象通過(guò)執(zhí)行它的成員方法對(duì)傳來(lái)的消息作出響應(yīng),完成特定的功能。 ?成員方法一旦定義,便可在不同的場(chǎng)合中多次調(diào)用,故可增強(qiáng)程序結(jié)構(gòu)的清晰度,提高編程效率。 ?成員方法的結(jié)構(gòu)包括兩部分內(nèi)容:方法聲明和方法體。方法聲明包括方法名、返回類(lèi)型和外部參數(shù)。其中參數(shù)的類(lèi)型可以是簡(jiǎn)單數(shù)據(jù)類(lèi)型,也可以是引用數(shù)據(jù)類(lèi)型。 Java EE基礎(chǔ)教程 9 2021年 11月 10日星期三 ?成員方法的定義方式如下: ?[public | protected | private ] [static][final|abstract] [native] [synchronized] ? returnType methodName ([paramList]) [throws exceptionList] ?{ ?statements ? } Java EE基礎(chǔ)教程 10 2021年 11月 10日星期三 方法聲明中的限定詞的含義: public:公共訪(fǎng)問(wèn)控制符。 private:私有訪(fǎng)問(wèn)控制符。 protected:保護(hù)訪(fǎng)問(wèn)控制符。 static: 類(lèi)方法,可通過(guò)類(lèi)名直接調(diào)用。 abstract: 抽象成員方法,沒(méi)有方法體。 final: 方法不能被重寫(xiě)。 native: 本地成員方法修飾符,集成其它語(yǔ)言的代碼。 synchronized: 控制多個(gè)并發(fā)線(xiàn)程的訪(fǎng)問(wèn)。 Java EE基礎(chǔ)教程 11 2021年 11月 10日星期三 ? 下面是一個(gè)類(lèi)名為“梯形”的類(lèi),類(lèi)體內(nèi)容的變量定義部分定義了 4 個(gè) float 類(lèi)型的變量“上底”,“下底”,“高”和“ laderArea”。方法定義部分定義了兩個(gè)方法“計(jì)算面積 ()”和“修改高 ()”。 class 梯形 { float 上底,下底,高, laderArea; float 計(jì)算面積 ( ) { laderArea=(上底 +下底 )*高 /; return laderArea。 } void 修改高 (float h) { 高 =h; } } ? 類(lèi)體變量定義部分所定義的變量被稱(chēng)為類(lèi)的成員變量。在方法體中定義的變量和方法的參數(shù)被稱(chēng)為局部變量。 ? 成員變量和局部變量的類(lèi)型可以是 Java中的任何一種數(shù)據(jù)類(lèi)型,包括基本類(lèi)型整型、浮點(diǎn)型、字符型、引用類(lèi)型。 Java EE基礎(chǔ)教程 12 2021年 11月 10日星期三 ? 成員變量在整個(gè)類(lèi)內(nèi)都有效,局部變量只在定義它的方法內(nèi)有效。例 如: class LocalVariable { int distance。 int find( ) { int a=12。 distance=a。 //合法, distance在整個(gè)類(lèi)內(nèi)有效。 return distance。 } void gety( ) { int y。 y=a。 //非法, a是局部變量,這里無(wú)法訪(fǎng)問(wèn) } } Java EE基礎(chǔ)教程 13 2021年 11月 10日星期三 例 41 創(chuàng)建一個(gè)類(lèi),該類(lèi)含有類(lèi)的成員變量和成員方法,并對(duì)所創(chuàng)建的類(lèi)進(jìn)行測(cè)試。 程序清單: ch04\ class Text1 { static int a。 //當(dāng)被定義為 static類(lèi)型時(shí),為類(lèi)變量,可被對(duì)象或類(lèi)調(diào)用 int b。 //實(shí)例對(duì)象變量,只能被對(duì)象調(diào)用 public void display(int a,int b) { //成員方法 (static int a=+a)。 ( int b=+b)。 } public static void display(int b) { //類(lèi)方法,可通過(guò)類(lèi)名直接調(diào)用 (static display: int b=+b)。 } Java EE基礎(chǔ)教程 14 2021年 11月 10日星期三 public static void main(String[] args) { Text1 tt=new Text1()。 //創(chuàng)建實(shí)例對(duì)象 tt t (5,6)。 //不可以 (5,6);因?yàn)閷?duì)象變量或?qū)ο蠓椒ㄖ荒鼙粚?duì)象 tt調(diào)用 (0)。 //當(dāng)被定義為 static類(lèi)型時(shí),為類(lèi)方法,可被對(duì)象或類(lèi)調(diào)用 (23)。 =9。 =24。 =3。 (a,15)。 } } Java EE基礎(chǔ)教程 15 2021年 11月 10日星期三 例 42 創(chuàng)建一個(gè)類(lèi),該類(lèi)含有判斷質(zhì)數(shù)的成員方法,測(cè)試時(shí)從鍵盤(pán)輸入一個(gè)數(shù),判斷是否為質(zhì)數(shù)。讀鍵盤(pán)采用 Scanner類(lèi)的 nextInt()方法。 程序清單: ch04\ import 。 public class PrimeNumber { /*用 (int) (n)求出循環(huán)上限, isPrime()方法用來(lái)檢測(cè)當(dāng)前數(shù)是否為質(zhì)數(shù) */ public static boolean isPrime(int num) { boolean prime = true。 int limit = (int) (num)。 for (int i = 2。 i = limit。 i++) { if (num % i == 0) { prime = false。 break。 } } return prime。 } Java EE基礎(chǔ)教程 16 2021年 11月 10日星期三 public static void main(String[] args) { Scanner input = new Scanner()。 (請(qǐng)輸入您要判斷的數(shù): )。 int n = ()。 if (isPrime(n)) { (n + 是質(zhì)數(shù)! )。 } else { (n+ 不是質(zhì)數(shù)! )。 } } } Java EE基礎(chǔ)教程 17 2021年 11月 10日星期三 ? ?方法重載指一個(gè)類(lèi)中有多個(gè)方法享有相同的名字,但是這些方法的參數(shù)必須不同,或者是參數(shù)的個(gè)數(shù)不同,或者是參數(shù)類(lèi)型不同。返回類(lèi)型不能用來(lái)區(qū)分重載的方法。其實(shí)方法重載的最主要的作用就是實(shí)現(xiàn)同名的構(gòu)造方法可以接受不同的參數(shù)。 ?參數(shù)類(lèi)型的區(qū)分度一定要足夠,例如不能是同一簡(jiǎn)單類(lèi)型的參數(shù),如 int與 long。 Java EE基礎(chǔ)教程 18 2021年 11月 10日星期三 例 43 創(chuàng)建一個(gè)類(lèi),該類(lèi)包含兩個(gè)重載的方法,對(duì)該類(lèi)進(jìn)行測(cè)試。 程序清單: ch04\ import .*。 class MethodOverloading{ void receive(int i) { (Receive one int data)。 (i=+i)。 } Java EE基礎(chǔ)教程 19 2021年 11月 10日星期三 void receive(int x, int y) { (Receive two int datas)。 (x=+x+ y=+y)。 } } public class MethodOverloadingTest{ public static void main(String[] args) { MethodOverloading mo=new MethodOverloading()。 (1)。 (2,3)。 } } Java EE基礎(chǔ)教程 20 2021年 11月 10日星期三 例 44 編譯并運(yùn)行下面的程序,分析運(yùn)行結(jié)果,體會(huì)其中方法重載的用法,進(jìn)一步理解方法重載的概念。 程序清單: ch04\ class Father{ void speak( ){ //無(wú)參數(shù)的 speak()方法 (I am Father! )。 } void speak(String s){ //有參數(shù)的 speak(String s)方法 (I like+
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號(hào)-1