java實(shí)驗(yàn)報(bào)告8_第1頁(yè)
java實(shí)驗(yàn)報(bào)告8_第2頁(yè)
java實(shí)驗(yàn)報(bào)告8_第3頁(yè)
java實(shí)驗(yàn)報(bào)告8_第4頁(yè)
java實(shí)驗(yàn)報(bào)告8_第5頁(yè)
已閱讀5頁(yè),還剩4頁(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)介

1、AU瑯廬/薯實(shí)驗(yàn)報(bào)告(2014 / 2015學(xué)年第2學(xué)期)課程名稱JAVA程序設(shè)計(jì)實(shí)驗(yàn)名稱抽象類和抽象方法實(shí)驗(yàn)時(shí)間2015年5 月 7日指導(dǎo)單位計(jì)算機(jī)學(xué)院/軟件學(xué)院軟件工程系指導(dǎo)教師周莉?qū)W生姓名班級(jí)學(xué)號(hào)學(xué)院(系)計(jì)算機(jī)軟件學(xué)專 業(yè)計(jì)算機(jī)科學(xué)與技院術(shù)實(shí)驗(yàn)名稱抽象類和抽象方法指導(dǎo)教師周莉?qū)嶒?yàn)類型上機(jī)實(shí)驗(yàn)學(xué)時(shí)2實(shí)驗(yàn)時(shí)間2015-5-7一. 實(shí)驗(yàn)?zāi)康?. 掌握多態(tài)的實(shí)現(xiàn)2. 掌握抽象類和抽象方法的定義和使用二、實(shí)驗(yàn)環(huán)境(實(shí)驗(yàn)設(shè)備)1. 每位學(xué)生配備計(jì)算機(jī)一臺(tái)2. 計(jì)算機(jī)需安裝好JDK和Jcreator三、實(shí)驗(yàn)內(nèi)容1. 首先編寫一個(gè)抽象類,要求該抽象類有3個(gè)抽象方法:Public abstract vo

2、id f( int x);Public abstract double g(double x);Public abstract double h(double x): 然后分別給出這個(gè)抽象類的3個(gè)子類。 要求:在應(yīng)用程序主類中使用這些子類創(chuàng)建對(duì)象,再讓它們的上轉(zhuǎn)型對(duì)象調(diào)用方法f()、 g()和 h()。(1)源程序:abstract class Apublic abstract void f(int x):public abstract void g(int x,int y):public abstract double h(double x):class Al extends Apublic

3、 void f(int x)public void g(int x,int y)int z二x+y;public double h(double x) return x*x;class A2 extends Apublic void f(int x)Hello:+x);public void g(int x,int y)int z=x-y;public double h(double x)return (x);class A3 extends Apublic void f(int x)你好:”+x);public void g(int x,int y) double z= (double)x/

4、y;public double h(double x)return 1/x;public class ZuoYe5_2public static void main(String args) A a=new Al ():(10);(12,20) ;a=new A2():(10);(12,20) ;a=new A3():(10);(12,20) ;(2)實(shí)驗(yàn)結(jié)果:2. 設(shè)計(jì)一個(gè)人員類(Person),其中包含一個(gè)方法pay,代表人員的工資支出。再?gòu)腜erson 類派生出助教類(Assistant)、講師類(Instructor副教授類(Assistant Professor) 和教授類(Prof

5、essor)o其中:工資支出二基本工資+授課時(shí)數(shù)*每課時(shí)兼課金。但助教基本工資為800,每課時(shí)兼課金25,講師基本工資為1000,每課時(shí)兼課金35, 副教授基本工資為1200,每課時(shí)兼課金40,教授基本工資為1400,每課時(shí)兼課金50。將Person定義為抽象類,pay為抽象方法,設(shè)計(jì)程序?qū)崿F(xiàn)多態(tài)性。(1) 源程序:abstract class Personprotected String name;protected double classum;public Person() =M Mclassum=0;public Person(String name,double classum)-n

6、ame;=classum;abstract public double pay ();public String toStringO return姓名:+t 工資支出:+()+n;class Assistant extends Person!public .Assistant(String nametdouble classum) super(name.classum);public double pay() return 800+classum*25;class Instructor extends Personpublic Instructor (String name,double cl

7、assum)super(name,classum);public double pay() return 1000+classum*35;class AssistantProfesson extends Person!public AssistantProfesson(String name,double classum)super(name,classum);public double pay() return 1200+classum*40;class Professor extends Personpublic Professor(String name,double classum)

8、super(rmme,classum);public double pay()return 1400+classum*50;public class sy8_2public static void main(String args) Person ps二new Person4; ps0=new Assistant (張三,120); psl=new Instructor(趙二130); ps2=new AssistantProfessonC1* 李四”.125); ps3=new Professor(王五,134); String output二”; for (int i=0;i;i+) ou

9、tput+=psi:(2) 實(shí)驗(yàn)結(jié)果:C:Progra FilesJCreatorV3GE2001. exe |xiits岀岀出出 H 資資資資 工工工工3S00 弱5550 弱6200 0 8100.0any keyto continue . 3. 定義一個(gè)抽象類Bank,它包含有oneyearRate (定期利率)、oneyearNationaldebt (國(guó)債利率)和interestRate (活期利率)常數(shù)和count ()方法及show()方法。Count () 方法用于對(duì)本息合計(jì)(存款本金+利息)進(jìn)行計(jì)算,而show()方法用于對(duì)本息合計(jì)進(jìn)行 顯示。由于對(duì)不同的存款方式,利率是不同

10、的,因此此程序分別定義多個(gè)子類實(shí)現(xiàn)對(duì)抽 象類的繼承,實(shí)現(xiàn)對(duì)利率的計(jì)算和顯示。本程序定義了定期利率、活期利率、國(guó)債利率三種利率,按照一萬(wàn)元錢位存款單位 進(jìn)行統(tǒng)計(jì),計(jì)算每種利率下存款一年后的本息合計(jì)。除了國(guó)債外,其他利率都要交納個(gè) 人所得稅20%。(1) 源程序: abstract class Bankprotected static final float oneyearRate=0.0178f;protected static final float oneyearNationaldebt=0.0198f;protected static final float interestRate=0.

11、0078f;abstract void count();abstract void show():class InterestRateCalcute extends Bankprivate float saving;private double sum;InterestRateCalcute(float i)saving=i;count();public void count()sum:zsaving+ (saving*;public void show()With current interest rate,sum=,,+sum):class OneyearNationa1debtCa1cu

12、te extends Bsnkprivate float saving;private double sum;OneyearNationaldebtCalcute(float i)saving=i;count();public void count() sum-saving+(saving*:public void show()With national debt ratesunp+sum);class OneyearRateCa1cute extends Bankprivate float saving;private double sum;OneyearRateCalcute(float

13、i)saving=i;count();public void count()sumsaving+(saving*;public void show()With fixed rate,sum+sum):class Calculate!public static void main(String args)(int mon=10000;OneyearRateCalcute rate=new OneyearRateCalcute(mon):0;OneyearNationaldebtCalcute debt二new OneyearNationaldebtCalcute(mon); 0;InterestRateCalcute interest=new InterestRateCalcute(mon);0;(2) 實(shí)驗(yàn)結(jié)果:四

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論