java接口與實(shí)現(xiàn)接口的類實(shí)驗(yàn)報(bào)告_第1頁
java接口與實(shí)現(xiàn)接口的類實(shí)驗(yàn)報(bào)告_第2頁
java接口與實(shí)現(xiàn)接口的類實(shí)驗(yàn)報(bào)告_第3頁
java接口與實(shí)現(xiàn)接口的類實(shí)驗(yàn)報(bào)告_第4頁
java接口與實(shí)現(xiàn)接口的類實(shí)驗(yàn)報(bào)告_第5頁
已閱讀5頁,還剩2頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、課程名稱面向?qū)ο蟪绦蛟O(shè)計(jì)實(shí)驗(yàn)名稱實(shí)驗(yàn)六、接口與實(shí)現(xiàn)接口的類日期2018/4/29學(xué)生學(xué)號姓名班級實(shí)驗(yàn)?zāi)康模和ㄟ^本次實(shí)驗(yàn),要求學(xué)生能進(jìn)一步掌握接口、java.la ng包中的基礎(chǔ)類庫和java.util包中的工具類庫的使用方法。實(shí)驗(yàn)條件:電腦一臺、能上網(wǎng)查閱資料。1.定義Person類,包含name (姓名)、birthday (出生日期)、idCard (身份證 號)、sex (性別)、age(年齡)等基本信息,通過使用Comparator接口實(shí)驗(yàn)Person類可以按姓名、年齡、出生日期等多種比較規(guī)則進(jìn)行排序。源代碼:package person;public class Pers on St

2、ri ngn ame;StringidCard ;String birthday ;char sex ;int age;public Pers on() public Person(Stringname, StringidCard , Stringbirthday , char sex , int age) super ();this . name = name;this . idCard = idCard ;this . birthday = birthday ;this . sex = sex ;this . age = age ;package person;importpublic c

3、lass CompareName impleme nts ComparatorOverridepublic int compare(Pers onp1 , Pers onp2) / TODO自動生成的方法存根returnpl . pareTo( p2. name);package person;importpublic class CompareBirthdayimpleme ntsComparatorvPers onOverridepublic int compare(Pers onp1 , Pers onp2) / TODO自動生成的方法存根returnp1 . birth

4、day .compareTo( p2. birthday );package person;importpublic class CompareAgeimpleme ntsComparatorvPers onSuppressWarnings (deprecation )Overridepublic int compare(Pers onpl , Pers onp2) / TODO自動生成的方法存根newlnteger( p2. age);return new Integer( pl . age ).compareTo( package import publicpers on;class Pe

5、rs on Text public static/ TODOvoid main( Str in g自動生成的方法存根args ) int n=5;Pers onpers on0=newPers on(張三“,4569,1996年6月6日,男,22);pers on1=newPers on(李四,“1234,1995年4月3日,男,23);pers on2=newPers on(王五,2589,1997年3月5日,男,21);pers on3=newPers on(趙麗“,3698,1998年2月5日,女,20);pers on4=newPers on(宋月“,5869,1998年1月 1日,女

6、,20);System.out.pri ntl n(“原來順序?yàn)?);for (inti =0; i n; i +) System.out.pr in tl n(姓名:+pers +性別:+pers onpers on =new Pers onn;age+ 生日:+person i . birthdayi .);i . sex +年齡:+pers onSystem.Arrays. for (intout .println( n按姓名排序后順序?yàn)閟ort ( person , new CompareName();i =0; i n; i +) :);System. out .pr

7、intln(姓名:+person i . name+ 性別:+person i . sex + 年齡:+person i . age+生日:+person i . birthday );System. out .println( n按年齡排序后順序?yàn)?);Arrays. sort ( person , new CompareAge();for (int i =0; i n; i +) System. out .println(姓名:+person i . name+ 性別:+person i . sex + 年齡:+person i . age+生日:+person i . birthday

8、);System. out .println( n按生日排序后順序?yàn)?:);Arrays. sort ( person , new CompareBirthday();for (int i =0; i n; i +) System. out .println(姓名:+person i . name+ 性別:+person i . sex + 年齡:+person i . age+生日:+person i . birthday );實(shí)驗(yàn)結(jié)果:2.首先定義基本幾何圖形接口( IShape ),然后定義IShape的實(shí)現(xiàn)類Circle(圓 形)、Square (正方形)和Triangle(三角形)。

9、要求計(jì)算各種圖形的面積和周長。(提示:求三角形的面積用海倫公式:S L* (L a)*(L b)*(L c),其中a,b,c是三角形的邊長,L=(a+b+c)/2 ,即周長的一半。) 源代碼:package jiekoushape;public in terface IShape public doublepublic doublepackage jiekoushape;public class Circlearea(); len gth();impleme ntsIShapeprivate privateStr ing doublen ame;publicCircle(Str ingsupe

10、r ();this . name = name;n ame,double r) this . r = r ;n ame) public Stri ng getName() return n ame;public void setName(Stri ng this . name = name;public double getR() return r;public void setR( double r) this . r = r ;Overridepublic double area() / TODO自動生成的方法存根return Math. PI *Math. pow( r , 2);Ove

11、rridepublic double len gth() / TODO自動生成的方法存根return Math. PI *r *2;Overridepublic String toString() / TODO自動生成的方法存根+area();returnname+周長是:+length()+, +面積是:package jiekoushape;public class Squareimpleme ntsIShape privateStri ngn ame;private double a;publicSquare(Str ingn ame, double a) super ();this .

12、 name = name;this . a = a;public Stri ng getName() returnn ame;public void setName(Stri ng n ame) this . name = name;public double getA() return a;public void setA( double a) this . a = a;Overridepublic double area() / TODO自動生成的方法存根return a* a;Overridepublic double len gth() / TODO自動生成的方法存根return 4*

13、 a;OverridepublicString toString() / TODO自動生成的方法存根returnname+周長是:+length()+ , +面積是:+area();package jiekoushape;public class Trian gleimpleme ntsIShapeprivateStr ingn ame;privatedoublea;privatedoubleb;privatedoublec;publicTria ngle(Stri ngn ame,double a, double b, double c) super ();this . name = nam

14、e;this . a = a;this . b = b;this . c = c;public Stri ng getName() returnn ame;public void setName(Stri ngn ame) this . name = name;public double getA() return a;public void setA( double a) this . a = a;public double getB() return b;public void setB( double b) this . b = b;public double getC() return

15、 c;public void setC( double c) this . c = c;public double area() / TODOAuto-ge nerated method stubdouble l =( a+b+c)/2;return Math. sqrt ( l *( l - a)*( l - b)*( l - c);public double len gth() / TODOAuto-ge nerated method stub retur na+b+c;OverridepublicStri ng toStri ng() / TODO自動生成的方法存根returnname+周長是:+length()+ , +面積是:+area(); package jiekoushape;public class DemoIShape public static void main( Str in gargs ) / TODO自動生成的方法存根IShape shape =n ull shape =new Circle( System. out .println( shape =new Square( System. out .println( shape =new Trian g

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論