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

正文內容

面向對象程序設計概述(編輯修改稿)

2024-08-28 14:46 本頁面
 

【文章內容簡介】 類型,提醒調用者要對相應的可能例外進行處理。 當執(zhí)行此方法并發(fā)生了例外時,程序會轉入調用者編制的例外處理程序段。 3 面向對象編程 58 方法的參數 ? 方法的參數要有名有型,參數的作用域在本方法中,在方法體中可以象方法體自己定義的變量一樣使用。 ? 參數是值傳遞 對象的內容可以改變,但對象的引用決不會改變。 ? 方法的參數可以與類的成員變量同名,這時,參數在方法體中將隱藏同名的成員變量。 class circle { int x,y, radius 。 setCircle (int x , int y , int radius ){ … } } 3 面向對象編程 59 值傳送與地址傳送 A B A B A B 引用類型 值傳送 基本類型 值傳送 地址傳送 0x2F 0x2F 3 面向對象編程 60 參數傳遞例 public class PassTest { float m_float 。 void change1(int pi) { pi = 100。 } void change2(String ps) { ps=new String(―Right‖) 。 } void change3(PassTest po ) { = 。 } public static void main(String[] args) { PassTest pt = new PassTest() 。 3 面向對象編程 61 參數傳遞例 int i = 22 。 ( i ) 。 (―i value is ‖ + i)。 String s = new String( ―Hello‖ ) 。 ( s ) 。 (―s value is ‖ + s)。 = 。 ( pt ) 。 (―Current is ‖ + )。 } // main() } // class 實參 形參 copy 3 面向對象編程 62 方法的說明 ?為 Employee類增加打印方法 ——將數據和代碼封裝在一個單一的實體中。 class Employee { String name。 int age。 float salary 。 void print() { (name + ―年齡為 : ” + age + ―月薪為 : ” + salary); } } //class 3 面向對象編程 63 對象方法的含義 Employee emp = new Employee( ) 。 =―張立” ; =21。 = 。 ?一旦對象被建立并被初始化,就可以調用該方法打印這個對象的數據。 () 。 ?對象 emp執(zhí)行 print 方法操作自己的數據。 ?向對象發(fā)消息,讓對象做某件事。 3 面向對象編程 64 方法的聲明 ?例: class shape{ private int x。 static float MaxArea=。 public void setx(int newx){ x=newx。 } public int getx( ){ return x。 } public static void setMA(float newMA){ MaxArea=newMA。 } } 3 面向對象編程 65 類方法(靜態(tài)方法) ? 類方法: static 方法名 (…){ …} ? 使用類方法不用創(chuàng)建類的對象。調用這個方法時,建議使用類名做前綴,而不是使用某一個具體的對象名。 ? 非 static的方法是對象方法(或稱實例方法)。 ? 類方法中不能訪問實例變量,而只能訪問類變量( static方法 — static域)。 ? 類方法中不能直接使用本類中的實例方法,只能使用其他的 static方法 。 ? 類方法中沒有 this值。 3 面向對象編程 66 類方法(靜態(tài)方法) public class a { public static void main(String[] args){ (())。 String s = to_char()。 (―e=― + s )。 } static String to_char(double x) { return (x)。 } } 3 面向對象編程 67 類方法(靜態(tài)方法) ?main方法是靜態(tài)方法,這是為了使系統(tǒng)在沒有任何實例化對象之前可以運行一個應用程序。 ?如果 main方法要調用本類的其它方法: – 將這些方法設計成靜態(tài)方法 – 創(chuàng)建對象,使用對象方法。 ?一個靜態(tài)方法不能被一個非靜態(tài)方法所覆蓋。 3 面向對象編程 68 例子:銀行業(yè)務 ?要求:處理簡單帳戶存取款、查詢 ?面向對象的 分析 ( OOA) – 對象模型抽象: 銀行帳戶 – 對象模型分析 : 余額、存、取、查 ?面向對象的 設計 ( OOD) – 對象模型的實現:類及其成員定義 ? BankAccount類 ? Banlance, etc ? getBalance(), getMoney(), etc 3 面向對象編程 69 銀行業(yè)務的程序結構 銀行帳戶類 BankAccount 數據:余額、利率 操作:查詢余額、存款、取款 查詢利率、設置利率 主類 UseAccount main()方法,創(chuàng)建 BankAccount 類的對象,并完成相應操作 3 面向對象編程 70 小結 —類與對象 ?面向對象的數據和方法: – 一個類的對象雖然具有相同的屬性,但對象卻各不相同(屬性值不同)。 – 一個類的對象方法雖然具有相同的代碼,但表現不同,因為方法所操作的對象(數據)不同。 ?共享的數據和方法: – 類屬性 — 在同一類的實例中共享數據(該數據不屬于一個對象,而屬于一個類)。 – 類方法 — 不需要實例化就能使用的靜態(tài)方法,雖然它們也能通過實例來訪問。 3 面向對象編程 71 小結 —類與對象 ?類名 .域名 靜態(tài)域,在類的空間里,是該類對象共享的單元 ?類名 .方法名 靜態(tài)方法 — 類方法的調用 ?類方法及域也可以用對象名調用,但最好用類名 ?對象名 .屬性名 實例變量 。通過方法操作屬性。 ?對象名 .方法名 方法調用又稱“消息傳遞”,實際上就是給指定對象發(fā)送消息:告訴它做什么,向它要信息(方法的返回值)。 3 面向對象編程 72 小結 —類與對象 ?訪問一個類: – 創(chuàng)建該類的對象,并使用該類對象的可見屬性與方法。 – 調用該類的可見靜態(tài)方法,訪問該類的可見靜態(tài)屬性。 – 繼承該類。 ?final – final類不能被繼承。 – final 方法不能被覆蓋。 – final 域不能被修改。 3 面向對象編程 73 小結 —封裝 ?類中的數據使用 private定義 。 ?使用 public方法來操作數據 。 ?把邏輯上相關聯(lián)的數據封裝成新的類來使用,類似結構體 。 ?不要定義太龐大的類,要把無關的功能適當分離 。 ?培養(yǎng)良好的編程風格 。 3 面向對象編程 74 this與 super ? this和 super是常用來指代子類對象和父類對象的關鍵字。 Java系統(tǒng)默認,每個類缺省地具有 null、 this和super三個域,所以在任意類中都可以不加說明而直接使用它們。 ? this表示的是當前對象本身,更確切地說, this代表了當前對象的一個引用。利用 this可以使用當前對象的域,調用當前對象的方法 。 ? super 表示的是當前對象的直接父類對象,是當前對象的直接父類對象的引用 。 3 面向對象編程 75 方法中使用 this class Banana { void f(int i) { ... } } Banana a = new Banana()。 b = new Banana()。 (1)。 (2)。 ? 方法如何知道是處理哪個對象? ? 編譯做了一些內部處理 (a,1)。 (b,2)。 ? 把一個隱含的參數傳給了方法 — 指向被操作對象的引用。 3 面向對象編程 76 this 如果你在方法中想拿到這個引用 —— this class Banana { void pick() { … } void pit() { ()。 … } // pick() } public class MyDate { int day , month , year 。 public void tomorrow() { = + 1 。 //day = day + 1 … } } 3 面向對象編程 77 this ?this 只能在方法中使用,表示當前對象,或類的當前實例。 ?this 適用于一些特殊的場合。 ?例: public class MyDate { int day, month, year 。 public void born() { Birthday bd = new Birthday(this) 。 … } } 3 面向對象編程 78 this 例 class Leaf { private int i = 0。 Leaf increment() { i++。 return this。 } void print() { (i = + i)。 } } public class a { public static void main(String[] args) { Leaf x = new Leaf()。 ().increment().increment().print()。 } } 3 面向對象編程 79 Java中的多態(tài) ?多態(tài) : 同一程序中同名的不同方法共存 – 可以通過子類對父類方法的覆蓋實現多態(tài) – 可以利用重載 (overload)在同一個類中定義多個同名的方法 ?多態(tài)情況下進行方法調用時,如何區(qū)分這些同名的不同方法 – 不同類中的同名方法:冠以類名以示區(qū)別 – 同類中的同名方法:用不同的參數列表 (參數的個數 , 類型 , 順序的不同 )來區(qū)別同名的不同方法 3 面向對象編程 80 多態(tài) ?例: – 三個類 Circle、 Square、 Triangle均有 draw( )方法和 era
點擊復制文檔內容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1