实验报告课程名称面向对象程序设计实验名称实验四、接口与实现接口的类日期学生学号姓名班级实验目的:通过本次实验,要求学生能进一步掌握接口、java.lang包中的基础类库和java.util包中的工具类库的使用方法。实验条件:电脑一台、能上网查阅资料。1.定义Person类,包含name(姓名)、birthday(出生日期)、idCard(身份证号)、sex(性别)、age(年龄)等基本信息,通过使用Comparator
接口实验Person类可以按姓名、年龄、出生日期等多种比较规则进行排序。源代码:Person.java:packagecom.jsjx.char4;importjava.util.Calendar;importjava.util.Comparator;publicclassPerson{Stringname;StringidCard;Calendarbirthday=Calendar.getInstance();charsex;intage;publicPerson(){}publicPerson(Stringname,intyear,intmonth,intday,StringidCard,charsex,intage){this.name=name;birthday.set(year,month,day);this.idCard=idCard;this.sex=sex;this.age=age;}}classCompareNameimplementsComparator{@Overridepublicintcompare(Persono1,Persono2){returno1.name.compareTo(o2.name);}}classCompareBirthdayimplementsComparator{@Overridepublicintcompare(Persono1,Persono2){returno1.birthday.compareTo(o2.birthday);}}classCompareAgeimplementsComparator{@Overridepublicintcompare(Persono1,Persono2){returnnewInteger(o1.age).compareTo(newInteger(o2.age));}}main.javapackagecom.jsjx.char4;importjava.util.Arrays;publicclassmain{publicstaticvoidmain(String[]args){intn=3;Person[]arr=newPerson[n];arr[0]=newPerson("张三",1976,3,26,"350821",'男',20);arr[1]=newPerson("李四",1995,4,27,"350821",'男',12);arr[2]=newPerson("王五",1996,10,28,"350821",'女',19);for(inti=0;ic&&a+c>b&&b+c>a){this.a=a;this.b=b;this.c=c;}else{System.out.println("这三条边无法构成三角形");}}publicbooleanIsTriangle(){returna+b>c&&a+c>b&&b+c>a;}publicdoublearea(){doublel=perimeter()/2;returnMath.sqrt(l*(l-a)*(l-b)*(l-c));}publicdoubleperimeter(){returna+b+c;}}classtest{publicstaticvoidmain(String[]args){Scanners=newScanner(System.in);doubler;System.out.println("输入圆的半径");r=s.nextDouble();IShapec=newCircle(r);System.out.println("圆的面积是"+c.area()+"周长是"+c.perimeter());System.out.println("输入正方形的边长");r=s.nextDouble();c=newSquare(r);System.out.println("圆的面积是"+c.area()+"周长是"+c.perimeter());System.out.println("输入三角形的三条边");doublei,j,k;i=s.nextDouble();j=s.nextDouble();k=s.nextDouble();c=newTriangle(i,j,k);System.out.println("三角形的面积是"+c.area()+"周长是"+c.perimeter());s.close();}}实验结果:实验总结(结论或问题分析):实验成绩任课教师签名