資源描述:
《JAVA面向?qū)ο缶幊?ppt》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在教育資源-天天文庫。
1、第三章面向?qū)ο蟮母拍詈蚃ava實現(xiàn)-2回顧類是具有相同屬性和行為的一組對象的集合,對象是類的實例封裝是隱藏對象實現(xiàn)細節(jié)的過程,以便不讓用戶看到實現(xiàn)的細節(jié)類可用Class來定義,類的變量和方法可被該類的實例訪問,圓點符號用于訪問對象的成員,構(gòu)造函數(shù)在創(chuàng)建對象時初始化對象包可用package來申明,可用import來導入包2目標掌握對象掌握類理解抽象和封裝理解對象與類之間的關系掌握包的創(chuàng)建和導入理解繼承及其特點運用JAVA程序?qū)崿F(xiàn)繼承理解多態(tài)及其特點設計運用JAVA程序?qū)崿F(xiàn)多態(tài)掌握訪問修飾符和方法修飾符3繼承父類子類父類/子類是相對的Cow類Lion類
2、Tiger類Animals類Carnivorous食肉類Herbivorous食草類Coat類4繼承的特點繼承的特點具有層次結(jié)構(gòu)子類繼承了父類的屬性和方法5繼承的優(yōu)點繼承的優(yōu)點代碼的可重用性父類的屬性和方法可用于子類設計應用程序變得更加簡單可以輕松地自定義子類6繼承的JAVA實現(xiàn)演示:示例1編寫一個父類使用extends關鍵字,編寫子類classVehicles{/**存儲交通工具的名稱.*/protectedStringname="HondaCivic";/**存儲顏色信息.*/protectedStringcolor="Red";/**存儲座位
3、信息.*/protectedintseats=5;/**構(gòu)造方法.*/Vehicles(){}/***顯示父類汽車的詳細信息*/voidshowDetail(){System.out.println("從父類Vehicles中輸出的信息");System.out.println("名稱-"+name);System.out.println("顏色-"+color);}}7classCarextendsVehicles{/**構(gòu)造方法.*/Car(){}/**顯示子類Car的信息.*/voidshow(){System.out.println(“從子
4、類Car中輸出的信息");System.out.println(“交通工具的名稱-"+name);System.out.println(“交通工具的顏色-"+color);System.out.println(“座位的數(shù)量-"+seats);System.out.println("==============================");}}publicclassCarTest{/***構(gòu)造方法*/CarTest(){}/***這是main方法*@paramargs傳遞至main方法的參數(shù)*/publicstaticvoidmain(Str
5、ing[]args){/*聲明一個對象*/Carvehicle=newCar();vehicle.show();vehicle.showDetail();}}8子類構(gòu)造方法2-1子類構(gòu)造方法的名稱與類的名稱相同先調(diào)用父類構(gòu)造方法,再調(diào)用子類構(gòu)造方法要調(diào)用父類構(gòu)造方法,使用關鍵字super9子類構(gòu)造方法2-2調(diào)用父類構(gòu)造方法的語法為:super()或super(參數(shù)列表);super()方法始終指向調(diào)用類的父類10調(diào)用父類構(gòu)造方法演示:示例3關鍵字super的用法classFictionAuthorextendsAuthor{/**存儲作者的小說類型
6、.*/Stringstorytype;/**子類構(gòu)造方法.@paramname傳遞至構(gòu)造方法的參數(shù)@paramtype傳遞至構(gòu)造方法的參數(shù)*/FictionAuthor(Stringname,Stringtype){super(name);storytype=type;System.out.println(“從FictionAuthor類輸出");System.out.println(“小說類型為"+storytype);}}調(diào)用父類構(gòu)造方法Author(Stringstr){name=str;System.out.println(“從Author
7、類輸出");System.out.println(“姓名為"+name);}11構(gòu)造函數(shù)的繼承子類可以繼承父類的構(gòu)造函數(shù),構(gòu)造函數(shù)的繼承遵循以下的原則:(1)子類無條件繼承父類的不含參數(shù)的構(gòu)造函數(shù)。(2)如果子類自己沒有構(gòu)造函數(shù),則它將繼承父類的無參數(shù)構(gòu)造函數(shù)作為自己的構(gòu)造函數(shù);如果子類自己定義了構(gòu)造函數(shù),則在創(chuàng)建新對象時,它將先執(zhí)行繼承自父類的無參數(shù)構(gòu)造函數(shù),然后再執(zhí)行自己的構(gòu)造函數(shù)。(3)父類的含參數(shù)構(gòu)造函數(shù),子類可以通過在自己構(gòu)造函數(shù)中使用super關鍵字來調(diào)用,但這個調(diào)用語句必須是子類構(gòu)造函數(shù)的第一個可執(zhí)行語句。構(gòu)造函數(shù)相互調(diào)用一個類的若干
8、個構(gòu)造函數(shù)之間可以相互調(diào)用。當一個構(gòu)造函數(shù)需要調(diào)用另一個構(gòu)造函數(shù)時,可以使用關鍵字this,同時這個調(diào)用語句應該是整個構(gòu)造