java接口与实现接口的类实验报告.docx
- 文档编号:28276997
- 上传时间:2023-07-10
- 格式:DOCX
- 页数:9
- 大小:17.01KB
java接口与实现接口的类实验报告.docx
《java接口与实现接口的类实验报告.docx》由会员分享,可在线阅读,更多相关《java接口与实现接口的类实验报告.docx(9页珍藏版)》请在冰豆网上搜索。
java接口与实现接口的类实验报告
实验报告
课程名称
面向对象程序设计
实验名称
实验六、接口与实现接口的类
日期
2018/4/29
学生学号
姓名
班级
实验目的:
通过本次实验,要求学生能进一步掌握接口、包中的基础类库和包中的工具类库的使用方法。
实验条件:
电脑一台、能上网查阅资料。
1.定义Person类,包含name(姓名)、birthday(出生日期)、idCard(身份证号)、sex(性别)、age(年龄)等基本信息,通过使用Comparator
Person类可以按姓名、年龄、出生日期等多种比较规则进行排序。
源代码:
packageperson;
publicclassPerson{
Stringname
StringidCard;
Stringbirthday;
charsex;
intage;
publicPerson(){
}
publicPerson(StringnameStringidCard,Stringbirthday,charsex,intage){
super();
=name
=idCard;
=birthday;
=sex;
=age;
}
}
packageperson;
importclassCompareNameimplementsComparatorvPerson>{
@Override
publicintcompare(Personp1,Personp2){
ame+"性另V:
"+person[i].sex+"年龄:
"+person[i].age+"生日:
"+person[i].birthday);
}
"\n按姓名排序后顺序为:
");
(person,newCompareName。
);
for(inti=0;i "姓名: "+person[i].name+"性别: "+person[i].sex+"年龄: "+person[i].age+"生日: "+person[i].birthday); } "\n按年龄排序后顺序为: "); (person,newCompareAge()); for(inti=0;i "姓名: "+person[i].name+"性别: "+person[i].sex+"年龄: "+person[i].age+"生日: "+person[i].birthday); } "\n按生日排序后顺序为: "); (person,newCompareBirthday()); for(inti=0;i "姓名: "+person[i].name+"性别: "+person[i].sex+"年龄: "+person[i].age+"生日: "+person[i].birthday); } } } 实验结果: 原来临專为: 姓名: 张二性划: 弟年龄iE: 1996^6^69姓窘: 車四性別: 勇年修: 22主口貂5鼻4月汨姓名: 王壬性别: 第年龄: 21生td: 1997#3^5^姓名邀丽性别;玄年龄: 2日生日;雷阳年2戶5日灶占炸月性别;女年幕2令生E;199371月1日 4綁名徘序后照序为: 迪8: 宋月性別: 女年龄: 20iB: 199B年1月1日£宕: 帐三性别潭年齢: 22生口: 1996^6月吕口 姓名: 李四性别: 舄年斟: 2耳主[l: 1995^4^3td姓名: 三五性刖: 男年龄性日: 19今7年弓月5匕姓宕: 赳丽性别: 女年松20生B: 1998年2月5日 茨年酣样序后赎厚为: 2.首先定义基本几何图形接口(IShape),然后定义IShape的实现类Circle(圆形)、Square(正方形)和Triangle(三角形)。 要求计算各种图形的面积和周长。 (提示: 求三角形的面积用海伦公式: S■L*(La)*(Lb)*(Lc),其中a,b,c 是三角形的边长,L=(a+b+c)/2,即周长的一半。 ) 源代码: packagejiekoushape; publicinterfaceIShape{ publicdoublearea(); publicdoublelength(); } packagejiekoushape; publicclassCircleimplementsIShape{ privateStringname; privatedoubler; publicCircle(Stringnamedoubler){ super(); =name =r; } publicStringgetName(){returnname; } publicvoidsetName(Stringnam©{ =name } publicdoublegetR(){returnr; } publicvoidsetR(doubler){ =r; } @Overridepublicdoublearea(){ //TODO自动生成的方法存根 return*(r,2); @Override publicdoublelength(){ //TODO自动生成的方法存根return*r*2; } @Override publicStringtoString(){ //TODO自动生成的方法存根 "+area(); returnname+"周长是: "+length()+","+"面积是: } } packagejiekoushape; publicclassSquareimplementsIShape{ privateStringname; privatedoublea; publicSquare(Stringnamedoublea){ super(); =name =a; } publicStringgetName(){returnname; publicvoidsetName(Stringnam©{ =name publicdoublegetA(){returna; } publicvoidsetA(doublea){ =a; } @Overridepublicdoublearea(){ //TODO自动生成的方法存根 returna*a; } @Override publicdoublelength(){ //TODO自动生成的方法存根 return4*a; } @Override publicStringtoString(){ //TODO自动生成的方法存根 "+area(); returnname+"周长是: "+length()+","+"面积是: } } packagejiekoushape; publicclassTriangleimplementsIShape{ privateStringname; privatedoublea; privatedoubleb; privatedoublec; publicTriangle(Stringnamedoublea,doubleb,doublec){ super(); =name =a; =b; =c; } publicStringgetName(){returnname; } publicvoidsetName(Stringnam©{ =name } publicdoublegetA(){returna; } publicvoidsetA(doublea){ =a; publicdoublegetB(){returnb; publicvoidsetB(doubleb){=b; } publicdoublegetC(){returnc; } publicvoidsetC(doublec){ =c; } publicdoublearea(){ //TODCAuto-generatedmethodstubdoublel=(a+b+c)/2; return(l*(l-a)*(l-b)*(l-c)); } publicdoublelength(){ //TODOAuto-generatedmethodstubreturna+b+c; } @Override publicStringtoString(){ //TODO自动生成的方法存根 "+area(); returnname+"周长是: "+length()+","+"面积是: } packagejiekoushape; publicclassDemoIShape{ publicstaticvoidmain(String[]args){ //TODO自动生成的方法存根 IShapeshape=null; shape=newCircle("圆形",3); shape=newSquare("正方形",4); shape=newTriangle("三角形",3,4,5); } } 实验结果: 诅=叩曰梓制台削 DemoIShapefJava应用腥序]E: \JAVA_JDK\bin\javdw.exe(201W5月2日上午11: 42: 10) 剧鳧谢跟咼;1S+84955592153876^^=2S.2743338B230S138 止万観由艮是: 16.0,0^1lfi-0 二宦羽鸟低是匕12«s&^0 实验总结(结论或问题分析): 本次实验,主要是对接口、包中的基础类库和包中的工具类库的使用,其中最 难得就是使用Comparator Comparator如何使用,受益匪浅。 实验成绩 任课教师签名
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 接口 实现 实验 报告