




已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
實(shí)驗(yàn)4、繼承與接口(一)1、 實(shí)驗(yàn)?zāi)康?. 子類(lèi)的繼承性2. 子類(lèi)對(duì)象的創(chuàng)建過(guò)程3. 成員變量的繼承與隱藏4. 方法的繼承與重寫(xiě) 5. 掌握繼承實(shí)現(xiàn)的各種限制。6. 掌握子類(lèi)對(duì)象的實(shí)例化過(guò)程。7. 掌握方法重寫(xiě)的概念及實(shí)現(xiàn)。8. 了解Object及對(duì)Object類(lèi)的主要方法進(jìn)行重寫(xiě)。2、 實(shí)驗(yàn)內(nèi)容及步驟1理解繼承的含義任務(wù)一:學(xué)習(xí)繼承實(shí)例 (1)內(nèi)容及步驟步驟一:創(chuàng)建一個(gè)基本的學(xué)生類(lèi),源代碼如下。public class Studentprotected String name; /具有保護(hù)修飾符的成員變量protected int id;void setdata(String name,int id) /設(shè)置數(shù)據(jù)的方法 =name;this.id= id;public void print() /輸出數(shù)據(jù)的方法 System.out.println(name=+name+ ,+ id=+id);步驟二:編譯Student.java,產(chǎn)生類(lèi)文件Student.class。步驟三:創(chuàng)建繼承的類(lèi)通過(guò)Student 類(lèi)產(chǎn)生子類(lèi)ColStu,其不僅具有父類(lèi)的成員變量,還定義了新成員變量xy(學(xué)院)、xi(系)。在程序中調(diào)用了父類(lèi)的print 方法,同時(shí)可以看出子類(lèi)也具有該方法。源代碼如下:class ColStu extends Student protected String xy; protected String xi; public static void main(String args) Student p1 = new Student(); p1.setdata(帥零,12321) ; p1.print(); ColStu s1 = new ColStu() ; s1.setdata(郭麗娜,12345); /調(diào)用父類(lèi)的成員方法 s1.xy=經(jīng)濟(jì)管理學(xué)院; /訪問(wèn)本類(lèi)的成員變量 s1.xi=信息管理系; /訪問(wèn)本類(lèi)的成員變量 s1.print(); System.out.println(name=++,+xy=+s1.xy+,+xi=+s1.xi); 步驟四:編譯并運(yùn)行程序。注意:公共類(lèi)Student 與ColStu類(lèi)要在同一文件夾(包)內(nèi)。(1) 實(shí)驗(yàn)報(bào)告將運(yùn)行結(jié)果寫(xiě)在實(shí)驗(yàn)報(bào)告中。思考:如果子類(lèi)與父類(lèi)不在同一包中子類(lèi)會(huì)繼承父類(lèi)哪些變量和方法?任務(wù)二: 根據(jù)父類(lèi)及以下描述編寫(xiě)子類(lèi)。在Vehicle類(lèi)的基礎(chǔ)上創(chuàng)建一個(gè)Tractor(拖拉機(jī))類(lèi),它不但擁有journey,wheelNum,loadNum,driveSpeed 四種屬性和driveAt()方法,而且還擁有自己的plough(耕地)方法,在該方法中要求能夠顯示journey,wheelNum,loadNum三個(gè)屬性的值,在應(yīng)用程序中分別使用Tractor類(lèi)的對(duì)象調(diào)用plough()和driveAt方法。public class Vehiclepublic float journey; public int wheelNum; public int loadNum; public int driveSpeed; public Vehicle()journey=100.3f;wheelNum=4;loadNum=1;public void driveAt(int speed)if (speed=60)System.out.println(行車(chē)速度太快,容易造成事故);/如果要求的車(chē)速太快,則機(jī)動(dòng)車(chē)自動(dòng)以40單位速度行駛driveSpeed=40;else System.out.println(你在安全行駛速度內(nèi)行駛);driveSpeed=speed; 2、成員變量的隱藏和成員方法的覆蓋任務(wù)一:學(xué)習(xí)實(shí)例變量的隱藏和方法的覆蓋(1) 內(nèi)容及步驟步驟一:創(chuàng)建父類(lèi)class A int i,j; void setIJ(int a,int b) i=a; j=b; int multiply() return i*j; 步驟二:創(chuàng)建子類(lèi)Bclass B extends A int i,k; /聲明了一個(gè)和父類(lèi)同名的變量i,隱藏了父類(lèi)的i B(int a,int b) i=a; k=b; int multiply()/* 重寫(xiě)了父類(lèi)的multiply()方法 */ return i*j*k; 步驟三:創(chuàng)建并運(yùn)行應(yīng)用程序。public class LX public static void main(String a) B subO=new B(6,9); subO.setIJ(7,8); int m=subO.multiply(); System.out.println(m = +m); 步驟四:編譯運(yùn)行程序。(2) 實(shí)驗(yàn)報(bào)告將運(yùn)行結(jié)果寫(xiě)在實(shí)驗(yàn)報(bào)告中。思考:但通過(guò)子類(lèi)對(duì)象subO調(diào)用setIJ的方法時(shí),為變量i和j賦值時(shí),i與j分別是屬于誰(shuí)的?父類(lèi)?子類(lèi)?分析獲得此運(yùn)行結(jié)果的原因。任務(wù)二:分析結(jié)果并驗(yàn)證(1)在以下程序中出現(xiàn)了成員隱藏,試分析程序運(yùn)行的結(jié)果。(2)編譯運(yùn)行下面程序,驗(yàn)證分析的結(jié)果,掌握成員隱藏時(shí)屬性的變化規(guī)則。 class Fatherint a=100;public void miner()a-;public class Son extends Father int a=0; public int getA()return super.a;public static void main(String arg)Father father=new Father();Son son=new Son();System.out.println(a of son is : +son.a);System.out.println(a of sons super is : +son.getA();son.miner();System.out.println(a of son is :+son.a);System.out.println(a of sons super is : +son.getA();(3) 實(shí)驗(yàn)報(bào)告將運(yùn)行結(jié)果寫(xiě)在實(shí)驗(yàn)報(bào)告中。3、觀察子類(lèi)對(duì)象的實(shí)例化過(guò)程任務(wù)一:分析應(yīng)用程序的運(yùn)行結(jié)果,并上機(jī)驗(yàn)證。(1)源代碼:class Person private String name; private int age; public Person() System.out.println(“父類(lèi)Person中的構(gòu)造方法?!?; public String getName() return name;public void setAge(int age) this. age = age;public int getAge() return age;public void setName(String name) = name;class Student extends Personprivate String school;public Student() System.out.println(“子類(lèi)Student中的構(gòu)造方法?!?;public String getSchool() return school;public void setSchool(String school) this.school = school;public class InstanceDemo public static void main(String args) Student stu = new Student(); stu.setName(“張三”); stu.setAge(30); stu.setSchool(“清華大學(xué)”); System.out.println(“姓名:”+stu.getName()+”,年齡:”+stu.getAge()+”,學(xué)校:”+stu.getSchool(); (2)實(shí)驗(yàn)報(bào)告將運(yùn)行結(jié)果寫(xiě)在實(shí)驗(yàn)報(bào)告中,并解釋獲得此結(jié)果的原因。 4、方法的重寫(xiě)任務(wù)一:編譯Student類(lèi),查看結(jié)果。(1) 源代碼如下: class Personpublic void print() System.out.println(“Person-void print()”);class Student extends Personvoid print() System.out.println(“Student-void print()”);(2) 實(shí)驗(yàn)報(bào)告將Student類(lèi)編譯后提示怎樣的信息?分析為什么會(huì)有這樣的信息。4、Object類(lèi)任務(wù)一:toString方法的理解。(1) 觀察程序輸出結(jié)果。源代碼:class Demopublic class ObjectDemo1public static void main(String args) Demo d = new Demo();System.out.println(“不加toString()輸出:”+d);System.out.println(“加toString()輸出:”+d.toSting();(2)編譯運(yùn)行程序,觀察結(jié)果。(3)實(shí)驗(yàn)報(bào)告將運(yùn)行結(jié)果寫(xiě)在實(shí)驗(yàn)報(bào)告中。思考:為什么兩次輸出都是同樣結(jié)果。 Demo有父類(lèi)嗎?任務(wù)二:根據(jù)對(duì)Object類(lèi)的方法的學(xué)習(xí)及上例的理解,完成以下代碼。(1) 源代碼:class Person()
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 韶山語(yǔ)文面試題及答案
- 街道團(tuán)委面試題及答案
- 華為從戰(zhàn)略到執(zhí)行培訓(xùn)
- 2025年中國(guó)排球器材行業(yè)市場(chǎng)全景分析及前景機(jī)遇研判報(bào)告
- 《數(shù)智時(shí)代下的供應(yīng)鏈管理:理論與實(shí)踐》課件 第十一章 供應(yīng)鏈績(jī)效評(píng)估
- 幼兒蘑菇美術(shù)課件
- 中醫(yī)護(hù)理課件
- 航空航天復(fù)合材料 課件 第10章 新型復(fù)合材料
- 基層群眾文化活動(dòng)組織的定位及實(shí)踐方法研究
- 塔吊安全技術(shù)培訓(xùn)
- 深靜脈血栓預(yù)防和護(hù)理評(píng)估
- 扣眼穿刺法課件
- 術(shù)后尿潴留預(yù)防與處理
- 2025年中級(jí)育嬰員技能等級(jí)證書(shū)理論全國(guó)考試題庫(kù)(含答案)
- 2025年果樹(shù)種植技術(shù)培訓(xùn)與咨詢(xún)服務(wù)合同范本
- 乳腺結(jié)節(jié)疾病的專(zhuān)業(yè)知識(shí)課件
- 2025年西安職業(yè)技術(shù)學(xué)院高職單招數(shù)學(xué)歷年(2016-2024)頻考點(diǎn)試題含答案解析
- 土地承包租賃合同書(shū)
- 2025年高壓電工作業(yè)考試國(guó)家總局題庫(kù)及答案(共280題)
- 2024年03月安徽省農(nóng)業(yè)信貸融資擔(dān)保有限公司2024年招考筆試歷年參考題庫(kù)附帶答案詳解
- 國(guó)家開(kāi)放大學(xué)《22019丨統(tǒng)計(jì)學(xué)原理(統(tǒng)設(shè)課)》機(jī)考題庫(kù)
評(píng)論
0/150
提交評(píng)論