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

正文內(nèi)容

面向?qū)ο蟪绦蛟O(shè)計(jì)概述-在線瀏覽

2024-09-11 14:46本頁(yè)面
  

【正文】 class rectangle extends shape{ …… } final class roundrect extends rectangle{ …… } 注意: final可以與 abstract一起使用嗎? 3 面向?qū)ο缶幊? 40 創(chuàng)建對(duì)象 ?對(duì)象 (實(shí)例 instance): 以類為模板創(chuàng)建的 具體實(shí)例 (實(shí)際個(gè)體 ) – 創(chuàng)建某個(gè)類的具體對(duì)象 (類似變量聲明 ) 類名 欲創(chuàng)建的對(duì)象名= new 類名 (參數(shù)表 ) 。 3 面向?qū)ο缶幊? 41 類的成員變量的聲明 ?聲明成員變量 (member)的語(yǔ)法 [修飾符 ] 數(shù)據(jù)類型 變量名; ?引用:對(duì)象名 .變量名 ?修飾符 – 訪問(wèn)控制符 ? public: 可被所有其他類引用 ? private: 僅可被該類自身引用和修改,不能被其他任何類(包括該類的子類)引用,它提供了最高級(jí)別的保護(hù)。 private protected int y。 …… } 3 面向?qū)ο缶幊? 44 成員變量的聲明 class Employee { String name 。 float salary 。 =―張立” ; =21。 final 類型 常量名 =值 實(shí)例變量 — 成員變量 其生命周期與對(duì)象存在的時(shí)間相同。 static 靜態(tài)變量名; ? 位于類的內(nèi)存區(qū)域中,為該類的各個(gè)對(duì)象共享 . ? 無(wú)此限定符的變量是實(shí)例變量。 static int j 。 } ? final 常量可同時(shí)定義為 static 類 ex j k=10 對(duì)象 1 i : 3 對(duì)象 2 i : 5 3 面向?qū)ο缶幊? 46 類成員變量(靜態(tài)變量) ?實(shí)現(xiàn)各實(shí)例之間的通訊 對(duì)于該類的任何一個(gè)對(duì)象訪問(wèn)該靜態(tài)變量時(shí),取得的都是相同的值 ?跟蹤創(chuàng)建的實(shí)例數(shù) public class Count { private int serial 。 //靜態(tài)變量 public Count() { counter++。} } ?靜態(tài)變量類似于某些語(yǔ)言中的全局變量 3 面向?qū)ο缶幊? 47 類成員變量(靜態(tài)變量) ?非 private 的靜態(tài)變量無(wú)須創(chuàng)建實(shí)例就可以從類的外部訪問(wèn)。 } public class test { public void m() { int m = 。 static double additoryFee。 int password。 double balance。 PhoneCard200 my200_2 = new PhoneCard200()。 (―第一張 200卡的接入號(hào)碼 :” + )。 (―200卡類的附加費(fèi):” + ) (―200卡接入號(hào)碼 :” + )。 ?形式參數(shù)是方法從調(diào)用它的環(huán)境輸入的數(shù)據(jù)。 ?要指定方法返回值類型。 ?與類名相同的所有方法都是類的構(gòu)造方法。 – 其生命周期:執(zhí)行進(jìn)入方法體時(shí)建立,退出方法時(shí)撤消。 ?在方法體中可以訪問(wèn)所有的類屬性,可以調(diào)用所有類中定義的方法。 3 面向?qū)ο缶幊? 53 方法的聲明 ?修飾符 (Modifier): – 訪問(wèn)控制符: public、 private、 protected、 private protected – static: 靜態(tài)方法,又稱 類方法 ? 使用類名或?qū)ο竺鳛榍熬Y,建議使用類名 ? 在方法體中只能使用 static變量和 static方法 – abstract: 只有方法頭,而沒(méi)有具體的方法體和操作實(shí)現(xiàn)的方法, 要在子類中通過(guò)重新定義( override)來(lái)實(shí)現(xiàn) – final: 不能被重新定義( override) 的方法 3 面向?qū)ο缶幊? 54 訪問(wèn)控制符 ?訪問(wèn)控制符是一組起到限定類、域或方法是否可以被程序里的其他部分訪問(wèn)和調(diào)用的修飾符 。程序的其他部分可以創(chuàng)建這個(gè)類的對(duì)象、訪問(wèn)這個(gè)類的內(nèi)部可見(jiàn)成員變量和調(diào)用它的可見(jiàn)方法 ?一般類只能被同一包中的類訪問(wèn)和引用。 3 面向?qū)ο缶幊? 55 ? 一個(gè)類作為整體對(duì)程序的其他部分可見(jiàn),并不能代表類內(nèi)的所有成員變量和方法也同時(shí)對(duì)程序的其他部分可見(jiàn),前者只是后者的必要條件 ? 成員變量和方法的可見(jiàn)性 域和方法的訪問(wèn)限定符 只限在本類內(nèi)使用。 可 被子類繼承 (包括位于不同包中的子類 ) protected 公共變量和公共方法,可被任何類使用。 無(wú)訪問(wèn)限定符 3 面向?qū)ο缶幊? 56 域和方法的訪問(wèn)限定符 ?為了使對(duì)象具有良好的封裝性,一般將類的實(shí)例變量設(shè)計(jì)成私有。 ?按照慣例,讀私有變量的方法取名為 get… 寫私有變量的方法取名為 set… 3 面向?qū)ο缶幊? 57 方法的聲明(續(xù)) ?返回類型: void、 return ?參數(shù)列表:參數(shù)類型可為 類 類型 ?throws: – 通告本方法中會(huì)產(chǎn)生的例外(異常) 類型,提醒調(diào)用者要對(duì)相應(yīng)的可能例外進(jìn)行處理。 3 面向?qū)ο缶幊? 58 方法的參數(shù) ? 方法的參數(shù)要有名有型,參數(shù)的作用域在本方法中,在方法體中可以象方法體自己定義的變量一樣使用。 ? 方法的參數(shù)可以與類的成員變量同名,這時(shí),參數(shù)在方法體中將隱藏同名的成員變量。 setCircle (int x , int y , int radius ){ … } } 3 面向?qū)ο缶幊? 59 值傳送與地址傳送 A B A B A B 引用類型 值傳送 基本類型 值傳送 地址傳送 0x2F 0x2F 3 面向?qū)ο缶幊? 60 參數(shù)傳遞例 public class PassTest { float m_float 。 } void change2(String ps) { ps=new String(―Right‖) 。 } public static void main(String[] args) { PassTest pt = new PassTest() 。 ( i ) 。 String s = new String( ―Hello‖ ) 。 (―s value is ‖ + s)。 ( pt ) 。 } // main() } // class 實(shí)參 形參 copy 3 面向?qū)ο缶幊? 62 方法的說(shuō)明 ?為 Employee類增加打印方法 ——將數(shù)據(jù)和代碼封裝在一個(gè)單一的實(shí)體中。 int age。 void print() { (name + ―年齡為 : ” + age + ―月薪為 : ” + salary); } } //class 3 面向?qū)ο缶幊? 63 對(duì)象方法的含義 Employee emp = new Employee( ) 。 = 。 () 。 ?向?qū)ο蟀l(fā)消息,讓對(duì)象做某件事。 static float MaxArea=。 } public int getx( ){ return x。 } } 3 面向?qū)ο缶幊? 65 類方法(靜態(tài)方法) ? 類方法: static 方法名 (…){ …} ? 使用類方法不用創(chuàng)建類的對(duì)象。 ? 非 static的方法是對(duì)象方法(或稱實(shí)例方法)。 ? 類方法中不能直接使用本類中的實(shí)例方法,只能使用其他的 static方法 。 3 面向?qū)ο缶幊? 66 類方法(靜態(tài)方法) public class a { public static void main(String[] args){ (())。 (―e=― + s )。 } } 3 面向?qū)ο缶幊? 67 類方法(靜態(tài)方法) ?main方法是靜態(tài)方法,這是為了使系統(tǒng)在沒(méi)有任何實(shí)例化對(duì)象之前可以運(yùn)行一個(gè)應(yīng)用程序。 ?一個(gè)靜態(tài)方法不能被一個(gè)非靜態(tài)方法所覆蓋。 – 一個(gè)類的對(duì)象方法雖然具有相同的代碼,但表現(xiàn)不同,因?yàn)榉椒ㄋ僮鞯膶?duì)象(數(shù)據(jù))不同。 – 類方法 — 不需要實(shí)例化就能使用的靜態(tài)方法,雖然它們也能通過(guò)實(shí)例來(lái)訪問(wèn)。通過(guò)方法操作屬性。 3 面向?qū)ο缶幊? 72 小結(jié) —類與對(duì)象 ?訪問(wèn)一個(gè)類: – 創(chuàng)建該類的對(duì)象,并使用該類對(duì)象的可見(jiàn)屬性與方法。 – 繼承該類。 – final 方法不能被覆蓋。 3 面向?qū)ο缶幊? 73 小結(jié) —封裝 ?類中的數(shù)據(jù)使用 private定義 。 ?把邏輯上相關(guān)聯(lián)的數(shù)據(jù)封裝成新的類來(lái)使用,類似結(jié)構(gòu)體 。 ?培養(yǎng)良好的編程風(fēng)格 。 Java系統(tǒng)默認(rèn),每個(gè)類缺省地具有 null、 this和super三個(gè)域,所以在任意類中都可以不加說(shuō)明而直接使用它們。利用 this可以使用當(dāng)前對(duì)象的域,調(diào)用當(dāng)前對(duì)象的方法 。 3 面向?qū)ο缶幊? 75 方法中使用 this class Banana { void f(int i) { ... } } Banana a = new Banana()。 (1)。 ? 方法如何知道是處理哪個(gè)對(duì)象? ? 編譯做了一些內(nèi)部處理 (a,1)。 ? 把一個(gè)隱含的參數(shù)傳給了方法 — 指向被操作對(duì)象的引用。 … } // pick() } public class MyDate { int day , month , year 。 //day = day + 1 … } } 3 面向?qū)ο缶幊? 77 this ?this 只能在方法中使用,表示當(dāng)前對(duì)象,或類的當(dāng)前實(shí)例。 ?例: public class MyDate { int day, month, year 。 … } } 3 面向?qū)ο缶幊? 78 this 例 class Leaf { private int i = 0。 return this。 } } public class a { public static void main(String[] args) { Leaf x = new Leaf()。 } } 3 面向?qū)ο缶幊? 79 Java中的多態(tài) ?多態(tài) : 同一程序中同名的不同方法共存 – 可以通過(guò)子類對(duì)父類方法的覆蓋實(shí)現(xiàn)多態(tài) – 可以利用重載 (overload)在同一個(gè)類中定義多個(gè)同名的方法 ?多態(tài)情況下進(jìn)行方法調(diào)用時(shí),如何區(qū)分這些同名的不同方法 – 不同類中的同名方法:冠以類名以示區(qū)別 – 同類中的同名方法:用不同的參數(shù)列表 (參數(shù)的個(gè)數(shù) , 類型 , 順序的不同 )來(lái)區(qū)別同名的不同方法 3 面向?qū)ο缶幊? 80 多態(tài) ?例: – 三個(gè)類
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1