資源描述:
《抽象類接口包.doc》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、實驗9抽象類,接口和包一、實驗?zāi)康?、熟練掌握抽象類abstract的概念。2、熟練掌握接口interface的概念。3、熟練包package的概念以及編譯運行的方法。4、熟練掌握內(nèi)部類innerclass的概念。5、熟練掌握遞歸的概念。6、理解面向?qū)ο蟮某绦蛟O(shè)計方法。二、實驗內(nèi)容(1)定義一個抽象類shape,它包含一個抽象方法getArea(),從shape類派生出rectangle和circle類,這兩個類都用getArea()方法計算對象的面積。編寫應(yīng)用程序使用rectangle和circle類。要求:定義rectangle和circle類的構(gòu)造
2、方法,初始化成員變量/***@(#)Shape.java***@authorsolu*@version1.002009/10/16*/publicabstractclassShape{publicabstractdoublegetArea();}classRectangleextendsShape{privatedoublelenght;privatedoublewidth;publicRectangle(doublel,doublew){lenght=l;width=w;}publicdoublegetArea(){returnlenght*width
3、;}}classCircleextendsShape{privatedoubler;publicCircle(doubler){this.r=r;}publicdoublegetArea(){returnMath.PI*Math.pow(r,2.0);}}classAbstractSample{publicstaticvoidmain(String[]args){Circlec=newCircle(2.0);System.out.println("Thecircle'sareais"+c.getArea());Rectangler=newRectangl
4、e(3.1,5.9);System.out.println("Therectangle'sareais"+r.getArea());}}2)學(xué)校中有教師和學(xué)生兩類人,而在職研究生既是教師又是學(xué)生。設(shè)計兩個接口studentinterface和teacherinterface。其中,studentinterface接口包含setFee()getFee()方法,分別用于設(shè)置和獲取學(xué)生的學(xué)費;teacherinterface接口包含setPay()和getPay()方法,分別用于設(shè)置和獲取教師的工資。定義一個研究生類graduate,實現(xiàn)studentinte
5、rface接口和teacherinterface接口,它的成員變量有name,sex,age,fee,pay。創(chuàng)建一個姓名為“zhangsan”的研究生,統(tǒng)計他的年收入和學(xué)費,如果收入減去學(xué)費不足2000元,則輸出“providealoan”(需要貸款)信息。要求:在graduate中實現(xiàn)各個接口定義的抽象方法。interfaceStudentIterface{publicabstractvoidsetFee(doublef);publicabstractdoublegetFee();}interfaceTeacherIterface{publicabs
6、tractvoidsetPay(doublep);publicabstractdoublegetPay();}classGraduateimplementsStudentIterface,TeacherIterface{privateStringname;privateStringsex;privateintage;privatedoublefee;privatedoublepay;publicGraduate(Stringn,Strings,inta,doublef,doublep){name=n;sex=s;age=a;fee=f;pay=p;}pu
7、blicvoidsetFee(doublef){fee=f;}publicdoublegetFee(){returnfee;}publicvoidsetPay(doublep){pay=p;}publicdoublegetPay(){returnpay;}publicvoidgetInfo(){if((pay*12-2*fee)<2000){System.out.println("Youneedaloan!");}else{System.out.println("Youpayisenought!");}}}publicclassGraduateSampl
8、e{publicstaticvoidmain(String[]args){Gra