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

正文內(nèi)容

java程序設(shè)計(jì)教學(xué)課件5(已修改)

2025-05-12 18:25 本頁面
 

【正文】 1 第 5章 使用對(duì)象和類編寫程序 理解對(duì)象和類以及他們之間的關(guān)系 學(xué)習(xí)如何定義類和創(chuàng)建類的對(duì)象 理解構(gòu)造方法的使用 了解對(duì)象的引用和如何向方法傳遞對(duì)象 理解實(shí)例變量和實(shí)例方法 理解類變量、類常量和類方法 理解變量的作用域 熟悉 java API的組織 使用字符串類 2 汽車設(shè)計(jì)圖 第 1輛 第 2輛 第 3輛 圖 汽車類與汽車的實(shí)例 對(duì)象和類 3 pi radius height area() volume () 成員變量 成員方法 圓柱體類 4 .1 聲明和創(chuàng)建 對(duì)象 1. 創(chuàng)建對(duì)象 通過創(chuàng)建一個(gè)對(duì)象可創(chuàng)建類的一個(gè)實(shí)例 , 也稱實(shí)例化此類。 例 Rectangle rect = new Rectangle()。 創(chuàng)建一個(gè)對(duì)象包括三部分: ? 聲明部分 ? 實(shí)例化部分 ? 初始化部分 5 .1 聲明和創(chuàng)建 對(duì)象 ? 聲明對(duì)象 聲明對(duì)象的名字和類型,用類名來說明對(duì)象的類型。 格式: type name 說明: ? 聲明對(duì)象的規(guī)則與變量聲明規(guī)則相同,但對(duì)象變量是引用類型; ? 在 java里類和接口都可以作為數(shù)據(jù)類型來使用; ? 對(duì)象聲明通知編譯器 name將用來引用 type類型的變量 ? 對(duì)象聲明并不創(chuàng)建新的對(duì)象。 例 : Circle mycirle。 6 聲明和創(chuàng)建 對(duì)象 創(chuàng)建對(duì)象 操作符 new通過為新對(duì)象分配存儲(chǔ)空間來實(shí)例化類 格式: new 類的構(gòu)造方法 例 new Circle()。 mycircle = new Circle()。 也可以一步完成 Circle mycircle = new Circle()。 7 .2 簡(jiǎn)單類型變量和對(duì)象類型變量的區(qū)別 ? 初始化對(duì)象 每個(gè)變量代表一個(gè)存儲(chǔ)值的內(nèi)存地址。對(duì)簡(jiǎn)單變量來說,對(duì)應(yīng)內(nèi)存所存儲(chǔ)的值是簡(jiǎn)單類型,對(duì)對(duì)象類型來說,它的值是一個(gè)引用,是對(duì)象的存儲(chǔ)地址 對(duì)象變量的賦值和你直覺期望的不同 。 例如 , 你認(rèn)為下面的程序段是做什么呢 ? Box b1 = new Box()。 Box b2 = b1。 你可能認(rèn)為,變量 b2被賦值為變量 b1對(duì)象引用的一個(gè)拷貝。也就是,你可能認(rèn)為 b1和 b2引用的是不同的對(duì)象,但實(shí)際情況卻相反, b1和 b2將引用同樣的對(duì)象。將 b1賦值給 b2并沒有分配任何內(nèi)存或?qū)υ瓕?duì)象做任何部分的拷貝。由于它們是同一個(gè)對(duì)象,因此通過變量 b2對(duì)對(duì)象的改變也將影響 b1所對(duì)應(yīng)的對(duì)象 8 .2 簡(jiǎn)單類型變量和對(duì)象類型變量的區(qū)別 ? 這種情況描繪如下: 9 .3 垃圾回收 清除對(duì)象 java運(yùn)行使系統(tǒng)有一個(gè)垃圾回收進(jìn)程負(fù)責(zé)清除不再使用的對(duì)象。 ? 垃圾回收器 垃圾回收器定期掃描內(nèi)存,對(duì)于被應(yīng)用的對(duì)象加上標(biāo)記,按可能的路徑掃描結(jié)束后清除未加標(biāo)記的對(duì)象。 ? 被回收的對(duì)象是: 不再被任何引用變量引用的對(duì)象 ? 引用變量自動(dòng)放棄 ? 人為地將引用變量置為 null 10 .3 垃圾回收 清除對(duì)象 ? 垃圾回收器 當(dāng)系統(tǒng)的內(nèi)存用盡或程序中調(diào)用 ()要求進(jìn)行垃圾收集時(shí),垃圾收集線程與系統(tǒng)同步運(yùn)行。否則垃圾收集器在系統(tǒng)空閑時(shí)異步地執(zhí)行。 11 .3 垃圾回收 清除對(duì)象 ? finialize()方法 在一個(gè)對(duì)象被垃圾回收器回收之前, java解釋器會(huì)自動(dòng)調(diào)用對(duì)象的 finalize()方法。通常在該方法內(nèi)包括了釋放系統(tǒng)資源的代碼段。 finalize( )方法在類 如: protected void finalize ( ) throws throwable{ …… // clean up code for this class super. finalize( )。 //清除對(duì)象使用的所有資源,包括由于繼 //承關(guān)系而獲得的資源 } 12 訪問對(duì)象的數(shù)據(jù)和方法 使用對(duì)象包括: ? 從對(duì)象中獲得信息 ? 改變對(duì)象的狀態(tài) ? 使對(duì)象執(zhí)行某些操作 實(shí)現(xiàn)途徑 : ? 引用對(duì)象的變量 ? 調(diào)用對(duì)象的方法 13 訪問對(duì)象的數(shù)據(jù)和方法 例 : ? public class TestCircle ? { ? // Main method ? public static void main(String[] args) ? { ? Circle myCircle = new Circle()。 // Create a Circle object ? (The area of the circle of radius ? + + is + ())。 ? } ? } ? 14 訪問對(duì)象的數(shù)據(jù)和方法 ? // Define a circle ? class Circle ? { ? double radius = 。 ? ? // Find the area of this circle ? double findArea() ? { ? return radius*radius*。 ? } ? } 15 訪問對(duì)象的數(shù)據(jù)和方法 使用一個(gè)對(duì)象之前必須先創(chuàng)建它 . 16 類體為該類的對(duì)象提供了在生存期內(nèi)需要的所有代碼。包括以下幾部分: 1. 構(gòu)造方法 ( constructor ) 2. 成員變量 ( member variable )的聲明 3. 方法 (Method)的實(shí)現(xiàn) 17 構(gòu)造方法 1. 構(gòu)造方法 ? 定義 :類中用來初始化新建的對(duì)象的方法 稱構(gòu)造方法。 ? 特點(diǎn) : ? 無返回類型, ? 方法名與類名相同 ? 構(gòu)造方法只能由 new運(yùn)算符調(diào)用 18 構(gòu)造方法 1. 構(gòu)造方法 說明: 續(xù) ? 構(gòu)造方法可被重載。 例如: Circle(double r) { radius=r。 } Circle() { radius=。 } 19 構(gòu)造方法 1. 構(gòu)造方法 說明: 續(xù) ? 變量和方法稱為類的成員(成員變量和成員方法),而構(gòu)造方法不是類的成員。 ? 每個(gè)類中至少有一個(gè)構(gòu)造方法。 ? 定義類時(shí)如未定義構(gòu)造方法,運(yùn)行時(shí)系統(tǒng)會(huì)為該類自動(dòng)定義缺省的構(gòu)造方法。 ? 沒有任何參數(shù) ? 沒有 body ? 不做任何事情 20 例 ? class TestCircleWithConstructors ? { ? public static void main(String[] args) ? { ? //Test Circle with radius ? Circle myCircle = new Circle()。 ? (The area of the circle of radius ? + + is + ())。 ? = 40。 ? ? //Test Circle with default radius ? Circle yourCircle = new Circle()。 ? (The area of the circle of radius ? + + is + ())。 ? }} 21 例 ? class Circle ? { ? double radius。 ? Circle(double r) ? { ? radius = r。 ? } ? Circle() ? { ? radius = 。 ? } ? double findArea() ? { ? return radius*radius*。 ? } ? } 22 例 ? 注 :類中如果沒有明確定義任何構(gòu)造方法 ,就會(huì)隱含地定義一個(gè)默認(rèn)構(gòu)造方法 .如果明確定義了構(gòu)造方法 ,除非顯式定義 ,否則就不會(huì)有默認(rèn)的構(gòu)造方法 . 23 傳遞簡(jiǎn)單類型變量的變量值與傳遞對(duì)象的區(qū)別: 傳遞簡(jiǎn)單類型變量就是值傳遞。改變方法內(nèi)部的參數(shù)不會(huì)影響方法外部的變量值。 傳遞對(duì)象意味著將對(duì)象的引用傳遞給形參。方法體內(nèi)局部對(duì)象的任何變化都會(huì)影響作為參數(shù)傳遞的原對(duì)象。 參見書例 24 public class TestPassingObject { public static void main(String[] args) { // Create a Circle object with default radius 1 Circle myCircle = new Circle(
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號(hào)-1