Java初級教程第七章面向?qū)ο?ppt
《Java初級教程第七章面向?qū)ο?ppt》由會員分享,可在線閱讀,更多相關(guān)《Java初級教程第七章面向?qū)ο?ppt(33頁珍藏版)》請在裝配圖網(wǎng)上搜索。
Java語言基礎(chǔ)第七章面向?qū)ο?static關(guān)鍵字封裝繼承extends方法重寫super關(guān)鍵字向上轉(zhuǎn)型向下轉(zhuǎn)型 上章內(nèi)容 多態(tài)包的使用package關(guān)鍵字import關(guān)鍵字抽象類abstract關(guān)鍵字接口 本章內(nèi)容 什么是多態(tài)多態(tài)顧名思義即為多種形態(tài)的意思Java中多態(tài)的含義發(fā)送消息給某個對象 讓這個對象自行決定采用哪種行為響應(yīng)這個消息子類對象的引用賦值給父類引用變量來實現(xiàn)動態(tài)的方法調(diào)用Java中形成多態(tài)的前提繼承重寫向上轉(zhuǎn)型 多態(tài)的概念 多態(tài)的應(yīng)用 動物園有這些動物 狗 兔子等 飼養(yǎng)員每天都會給這些動物喂食 狗喜歡吃骨頭 而兔子喜歡吃胡蘿卜 通過Java程序模擬飼養(yǎng)員喂食參考代碼 案例 Animal java 案例 Food java 案例 Rabbit java Dog java 案例 Carrot java Bone java 多態(tài)的應(yīng)用 提高代碼的可重用性降低模塊之間的耦合度 多態(tài)的作用 形狀類Shape需要提供用于計算面積和周長的方法 但是形狀本身沒有被確定 那么計算周長和面積的方法就無法確定 此時我們就需要使用抽象類和抽象方法 由于Shape類計算周長和面積的方法無法確定 那么就可以將這樣的方法聲明為抽象的 以便在具體的子類中進行實現(xiàn) 抽象方法的聲明 修飾符 abstract返回值類型方法名 參數(shù)列表 注意 因為抽象方法無法確定具體執(zhí)行的功能 所有抽象方法沒有方法體 需要在小括號后加上分號 抽象類和抽象方法 抽象方法 如果一個類的某些功能比較抽象或者無法在本類中具體實現(xiàn) 可以將這個類聲明為抽象的 那么這些抽象或者無法具體實現(xiàn)的功能可以在子類中完成 抽象類的語法 修飾符 abstractclass類名 extends父類名 類體 抽象類和普通類除了使用abstract修飾外和普通的類相似抽象類中可以沒有抽象方法但是一旦某個有抽象方法 那么這個類必須被聲明為抽象類 抽象類 抽象類 因為抽象類不是一個具體的類 所以無法實例化 但是抽象類可以用于聲明對象 抽象類 抽象類可以被繼承 在子類中實現(xiàn)抽象類的所有抽象方法 以達到抽象類的具體化 抽象類 具體化后的子類方法就可以用來創(chuàng)建對象了 抽象類 在軟件工程中 經(jīng)常將一個大的項目分由不同的開發(fā)小組共同開發(fā) 各個小組的開發(fā)工作是并行的 在很多時候 對于不同小組的程序員來說 清楚地說明各自的軟件如何相互作用 并就此達成統(tǒng)一 約定 是很重要的 這種情況下 每一小組都可以在對其他小組怎么編寫代碼一無所知的情況下 就能編寫自己的代碼 并且各自小組編寫的代碼能很好的協(xié)同工作 接口就是這樣的 約定 接口 在Java中接口不僅僅是程序開發(fā)過程中 約定 更是更加抽象化的抽象類接口的定義 修飾符 interface接口名 常量 抽象方法 接口的定義 接口的實現(xiàn)定義類時通過implements關(guān)鍵字實現(xiàn)接口接口實現(xiàn)的語法 修飾符 class類名 extends父類名 implements接口1 接口2 類體部分 接口的實現(xiàn) 一個類可以實現(xiàn)多個接口 從而解決了Java單繼承的缺點 接口的實現(xiàn) 在Java中類之間的繼承關(guān)系是單繼承 也就是說一個類有且只能有一個父類 而Java中的接口實現(xiàn)了多繼承 也就是說一個接口可以有多個父接口 接口的繼承 提高程序的重用性提高程序的可擴展性降低程序的耦合度實現(xiàn)了多繼承 接口的作用 實現(xiàn)多繼承 接口的作用 實現(xiàn)了多繼承 接口的作用 降低程序耦合度 接口的作用 降低耦合度 接口的作用 什么是包包是Java用于提供訪問保護和命名空間管理的方式簡單的理解 包就是用來將Java中類和接口等進行分類管理的工具 類似于操作系統(tǒng)中的目錄包的聲明package包名 包名的前半部分一般使用倒置的域名 后半部分一般采用該包下類分類名 或者功能名 如 packagecom sina util 包的聲明必須是整個類文件的第一行語句 包的使用 聲明包 一旦需要使用另外一個包中的類時 需要將該類導(dǎo)入到當前類中 如需要在程序中使用java util包下的Scanner類 需要將給類先導(dǎo)入到使用的類中類導(dǎo)入的語法import包名 類名 或者import包名 包的導(dǎo)入 導(dǎo)入類 instanceof運算符的使用用于判斷一個對象是不是某個類的實例 instanceof運算符 多態(tài)包的使用package關(guān)鍵字import關(guān)鍵字抽象類abstract關(guān)鍵字final關(guān)鍵字接口interface關(guān)鍵字implements關(guān)鍵字 本章總結(jié) 作業(yè)一設(shè)計一個臺燈類Lamp其中臺燈有燈泡這個屬性 還有開燈 on 這個方法 設(shè)計一個燈泡類其中有紅燈泡 RedBuble 和綠燈泡 GreenBuble 他們都有一個發(fā)亮的方法 請設(shè)計出一段代碼可以使臺燈開啟燈泡發(fā)亮 并且保證替換不同種類的燈泡臺燈類代碼不被修改 作業(yè)二 設(shè)計一個繼承關(guān)系其中存在動物類Animal 狗類Dog和貓類Cat 對于貓類和狗類都有一個吃eat方法 但是貓和狗的吃eat方法的實現(xiàn)不同 請合理的設(shè)計出AnimalDogCat這3個類關(guān)系 作業(yè) 作業(yè)三 設(shè)計一個形狀類 接口 Shape 方法 求周長和求面積形狀類 接口 的子類 實現(xiàn)類 Rect 矩形 Circle 圓形 Rect類的子類 Square 正方形 不同的子類會有不同的計算周長和面積的方法創(chuàng)建三個不同的形狀對象 放在Shape類型的數(shù)組里 分別打印出每個對象的周長和面積 作業(yè) 作業(yè)四 某公司的雇員分為以下若干類 Employee 這是所有員工總的父類 屬性 員工的姓名 員工的生日月份 方法 getSalary intmonth 根據(jù)參數(shù)月份來確定工資 如果該月員工過生日 則公司會額外獎勵100元 SalariedEmployee Employee的子類 拿固定工資的員工 屬性 月薪HourlyEmployee Employee的子類 按小時拿工資的員工 每月工作超出160小時的部分按照1 5倍工資發(fā)放 屬性 每小時的工資 每月工作的小時數(shù)SalesEmployee Employee的子類 銷售人員 工資由月銷售額和提成率決定 屬性 月銷售額 提成率BasePlusSalesEmployee SalesEmployee的子類 有固定底薪的銷售人員 工資由底薪加上銷售提成部分 屬性 底薪 寫一個程序 把若干各種類型的員工放在一個Employee數(shù)組里 寫一個方法 打印出某月每個員工的工資數(shù)額 注意 要求把每個類都做成完全封裝 不允許非私有化屬性 作業(yè)- 1.請仔細閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點此認領(lǐng)!既往收益都歸您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- Java 初級教程 第七 面向 對象
鏈接地址:http://www.820124.com/p-7422402.html