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

正文內(nèi)容

第二章類(lèi)與對(duì)象的基本概念(存儲(chǔ)版)

  

【正文】 AVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 63 ? 運(yùn)行結(jié)果 Circle 1 fits inside Rectangle: true Circle 2 fits inside Rectangle: false 方法成員 (續(xù) ) —— 例 2_9運(yùn)行結(jié)果 類(lèi)與對(duì)象 JAVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 64 ? 類(lèi)方法 –也稱(chēng)為靜態(tài)方法,表示類(lèi)中對(duì)象的共有行為 –聲明時(shí)前面需加 static修飾符 –不能被聲明為抽象的 –類(lèi)方法可以在不建立對(duì)象的情況下用類(lèi)名直接調(diào)用,也可用類(lèi)實(shí)例調(diào)用 方法成員 (續(xù) ) —— 類(lèi)方法 類(lèi)與對(duì)象 JAVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 65 ? 將攝氏溫度 (centigrade)轉(zhuǎn)換成華氏溫度 (fahrenheit) – 轉(zhuǎn)換公式為 fahrenheit = centigrade * 9 / 5 + 32 – 除了攝氏溫度值及公式中需要的常量值,此功能不依賴(lài)于具體的類(lèi)實(shí)例的屬性值,因此可聲明為類(lèi)方法 – 轉(zhuǎn)換方法 centigradeToFahrenheit放在類(lèi) Converter中 public class Converter { public static int centigradeToFahrenheit(int cent) { return (cent * 9 / 5 + 32)。 = 50。”及“ = 10。代碼如下: public void setRadius(int radius){ = radius。 } } 構(gòu)造方法 (續(xù) ) —— 例 2_12(使用默認(rèn)構(gòu)造方法) 對(duì)象初始化和回收 JAVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 86 ? 運(yùn)行結(jié)果 ownerName=null accountNumber=0 balance= 對(duì)象初始化和回收 構(gòu)造方法 (續(xù) ) —— 例 2_12運(yùn)行結(jié)果 JAVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 87 ? 自定義構(gòu)造方法與方法重載 –可在生成對(duì)象時(shí)給構(gòu)造方法傳送初始值,使用希望的值給對(duì)象初始化 –構(gòu)造方法可以被重載,構(gòu)造方法的重載和方法的重載一致 –一個(gè)類(lèi)中有兩個(gè)及以上同名的方法,但參數(shù)表不同,這種情況就被稱(chēng)為方法重載。如果在一個(gè)類(lèi)中不存在無(wú)參的構(gòu)造方法,則要求其子類(lèi)聲明時(shí)必須聲明構(gòu)造方法,否則在子類(lèi)對(duì)象的初始化時(shí)會(huì)出錯(cuò) –在聲明構(gòu)造方法時(shí),好的聲明習(xí)慣是 ?不聲明構(gòu)造方法 ?如果聲明,至少聲明一個(gè)無(wú)參構(gòu)造方法 對(duì)象初始化和回收 構(gòu)造方法 (續(xù) ) —— 自定義無(wú)參構(gòu)造方法 JAVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 90 ? 構(gòu)建一個(gè) Bush類(lèi),有兩個(gè)有參數(shù)的構(gòu)造方法 class Bush { Bush(int i) {} Bush(double d) {} } – 如果寫(xiě): new Bush()。 Tree() { prt(Planting a seedling)。 i 5。 accountNumber = initAccountNumber。 balance = initBal。 anAccount = new BankAccount(ZhangLi, 100023,0)。 + (hashCode()) ?下面的兩行代碼等價(jià) (anAccount)。 } } 應(yīng)用舉例 聲明 BankAccount類(lèi) —— JAVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 105 ? 測(cè)試結(jié)果 Here is the account: BankAccount372a1a Account name: ZhangLi Account number: 100023 Balance: $ 應(yīng)用舉例 聲明 BankAccount類(lèi) (續(xù) ) —— AccountTester測(cè)試結(jié)果 JAVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 106 ? toString()方法 – 將對(duì)象的內(nèi)容轉(zhuǎn)換為字符串 – Java的所有類(lèi)都有一個(gè)默認(rèn)的 toString()方法,其方法體如下: getClass().getName() + 39。 } public void setBalance(float newBalance) { balance = newBalance。 } public BankAccount(String initName, int initAccNum, float initBal) { ownerName = initName。 } public BankAccount(String initName, int initAccountNumber) { this(initName, initAccountNumber, )。 } static void prt(String s) { (s)。 import .*。 balance = 。 (accountNumber= + )。 } 類(lèi)成員的訪(fǎng)問(wèn)控制 (續(xù) ) —— set方法 類(lèi)與對(duì)象 JAVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 80 ? 關(guān)鍵字 this的使用 – 如果形式參數(shù)名與實(shí)例變量名相同,則需要在實(shí)例變量名之前加 this關(guān)鍵字,否則系統(tǒng)會(huì)將實(shí)例變量當(dāng)成形式參數(shù)。 (Circle 2 has circumference + circum2)。 public double circumference() { return 2 * PI * radius。 (Circle 1 fits inside Rectangle: + (r))。 (2 * radius )。 (4)。 } public double area() { return PI * radius * radius。 Rectangle r = new Rectangle()。 int radius。 = 50。 ()。 private int y。 int radius。 = “100084。 String province。 streetName2 = BeiNong。 name1 = Zhang Li。 = 。 (x + + y)。 (x)。 } public void showTime() { (hour+:+minute+:+second)。 封裝 (續(xù) ) 面向?qū)ο蟪绦蛟O(shè)計(jì)方法概述 JAVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 14 ? 封裝的意義 –在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,類(lèi)封裝了數(shù)據(jù)及對(duì)數(shù)據(jù)的操作,是程序中的最小模塊 –禁止了外界直接操作類(lèi)中的數(shù)據(jù),模塊與模塊之間只能通過(guò)嚴(yán)格控制的接口進(jìn)行交互,這使得模塊之間的偶合度大大降低 –保證了模塊具有較好的獨(dú)立性,程序維護(hù)和修改較為容易 封裝 (續(xù) ) 面向?qū)ο蟪绦蛟O(shè)計(jì)方法概述 JAVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 15 繼承 ? 繼承 –是指新的類(lèi)可以獲得已有類(lèi)(稱(chēng)為超類(lèi)、基類(lèi)或父類(lèi))的屬性和行為,稱(chēng)新類(lèi)為已有類(lèi)的派生類(lèi)(也稱(chēng)為子類(lèi)) –在繼承過(guò)程中派生類(lèi)繼承了基類(lèi)的特性,包括方法和實(shí)例變量 –派生類(lèi)也可修改繼承的方法或增加新的方法,使之更適合特殊的需要 –有助于解決軟件的可重用性問(wèn)題,使程序結(jié)構(gòu)清晰,降低了編碼和維護(hù)的工作量 面向?qū)ο蟪绦蛟O(shè)計(jì)方法概述 JAVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 16 ? 單繼承 –任何一個(gè)派生類(lèi)都只有單一的直接父類(lèi) –類(lèi)層次結(jié)構(gòu)為樹(shù)狀結(jié)構(gòu) ? 多繼承 –一個(gè)類(lèi)可以有一個(gè)以上的直接父類(lèi) –類(lèi)層次結(jié)構(gòu)為網(wǎng)狀結(jié)構(gòu),設(shè)計(jì)及實(shí)現(xiàn)比較復(fù)雜 ? Java語(yǔ)言?xún)H支持單繼承 繼承 (續(xù) ) 面向?qū)ο蟪绦蛟O(shè)計(jì)方法概述 JAVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 17 多態(tài) ? 多態(tài) –一個(gè)程序中同名的不同方法共存 –主要通過(guò)子類(lèi)對(duì)父類(lèi)方法的覆蓋來(lái)實(shí)現(xiàn) –不同類(lèi)的對(duì)象可以響應(yīng)同名的消息 (方法 ) ,具體的實(shí)現(xiàn)方法卻不同 –使語(yǔ)言具有靈活、抽象、行為共享、代碼共享的優(yōu)勢(shì),很好地解決了應(yīng)用程序方法同名問(wèn)題 面向?qū)ο蟪绦蛟O(shè)計(jì)方法概述 JAVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 18 ? 類(lèi)與對(duì)象 –在程序中,對(duì)象是通過(guò)一種抽象數(shù)據(jù)類(lèi)型來(lái)描述的,這種抽象數(shù)據(jù)類(lèi)型稱(chēng)為類(lèi)(Class) –一個(gè)類(lèi)是對(duì)一類(lèi)對(duì)象的描述。 int Second。 抽象 (續(xù) ) 面向?qū)ο蟪绦蛟O(shè)計(jì)方法概述 JAVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 11 ?例: –人 ?數(shù)據(jù) (屬性 ) –char *name。 int minute 。 對(duì)象的聲明與引用 (續(xù) ) 類(lèi)與對(duì)象 JAVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 26 數(shù)據(jù)成員 ? 數(shù)據(jù)成員 –表示 Java類(lèi)的狀態(tài) –聲明數(shù)據(jù)成員必須給出變量名及其所屬的類(lèi)型,同時(shí)還可以指定其他特性 –在一個(gè)類(lèi)中成員變量名是唯一的 –數(shù)據(jù)成員的類(lèi)型可以是 Java中任意的數(shù)據(jù)類(lèi)型(簡(jiǎn)單類(lèi)型,類(lèi),接口,數(shù)組 ) –分為實(shí)例變量和類(lèi)變量 類(lèi)與對(duì)象 JAVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 27 – 聲明格式 [public | protected | private] [static][ final][transient] [volatile] 變量數(shù)據(jù)類(lèi)型 變量名 1[=變量初值 ], 變量名 2[=變量初值 ], … 。 double height = 。 x = new Circle()。 int gateNumber1, gateNumber2。 city1 = Beijing。 postalCode2 = 102206。 = “Zhang Li。 = “BeiNong。 ()。 = y。 } } 數(shù)據(jù)成員 (續(xù) ) —— Point類(lèi)測(cè)試 類(lèi)與對(duì)象 JAVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 44 ? 測(cè)試結(jié)果 1 2 true 2 數(shù)據(jù)成員 (續(xù) ) —— Point類(lèi)測(cè)試結(jié)果 類(lèi)與對(duì)象 JAVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 45 ? 實(shí)例變量和類(lèi)變量都可被聲明為 final ? final實(shí)例變量必須在每個(gè)構(gòu)造方法結(jié)束之前賦初值,以保證使用之前會(huì)被初始化 ? final類(lèi)變量必須在聲明的同時(shí)初始化 數(shù)據(jù)成員 (續(xù) ) —— final修飾符 類(lèi)與對(duì)象 JAVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 46 方法成員 ? 方法成員 –定義類(lèi)的行為 ?一個(gè)對(duì)象能夠做的事情 ?我們能夠從一個(gè)對(duì)象取得的信息 –可以沒(méi)有,也可以有多個(gè);一旦在類(lèi)中聲明了方法,它就成為了類(lèi)聲明的一部分 –分為實(shí)例方法和類(lèi)方法 類(lèi)與對(duì)象 JAVA語(yǔ)言程序設(shè)計(jì) 清華大學(xué) 鄭莉 47 –聲明格式 [public | protected | private] [static][ final][abstract] [native] [synchronized] 返回類(lèi)型 方法名 ([參數(shù)列表 ]) [throws exceptionList] { 方法體 } 方法成員 (續(xù) ) —— 聲明格式 類(lèi)
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1