Java语言程序设计A实验3接口

上传人:汽*** 文档编号:513085376 上传时间:2023-10-23 格式:DOC 页数:16 大小:177KB
返回 下载 相关 举报
Java语言程序设计A实验3接口_第1页
第1页 / 共16页
Java语言程序设计A实验3接口_第2页
第2页 / 共16页
Java语言程序设计A实验3接口_第3页
第3页 / 共16页
Java语言程序设计A实验3接口_第4页
第4页 / 共16页
Java语言程序设计A实验3接口_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《Java语言程序设计A实验3接口》由会员分享,可在线阅读,更多相关《Java语言程序设计A实验3接口(16页珍藏版)》请在金锄头文库上搜索。

1、实验课程名称:Java语言程序设计A实验项目名称实验3:接口实验成绩实验者专业班级组另U同组者无开始日期第一部分:实验预习报告(包括实验目的及意义,实验基本原理与方法,主要仪器设备及耗 材,实验内容及要求,实验方案与技术路线等)一 实验目的及意义1自定义接口。2自定义类实现接口。3接口及实现类的多态处理。二实验基本原理与方法1接口的概念。2接口对多态的支持。三主要仪器设备及耗材1.PC及其兼容机。2计算机操作系统。3程序编辑器 EditPlus/Eclipse。4.Java开发工具 JDK。四实验内容及要求自定义形状接口Shape该接口声明了计算面积、周长的方法。然后,分别编写三角形类Tria

2、ngle、六边形类 Hexagon、椭圆形类 Ellipse,它们都实现了 Shape接口。最后,编写测试类 ShapesDemo多态地创建各种形状对象,计算面积、周长。五实验方案及技术路线(含各种形状面积、周长的计算公式,UML类图,注意事项)因为每种形状的面积、周长计算所需要的参数个数不同,并且不同类型的三角形计算周长的面积的方法也不同,所以抽象类的参数就定为可变长度集合ArrayList,一般三角形的面积S=a*h/2,周长L=a+b+c;直角三角形面积 S=a*b,周长L=a+b+2 b 2,等边三角形的面积S= 3* a2/4,周长L=3*a;六边形的面积 S=3 3*a2/2,周长

3、L=6*a。以下就是简略的 UML类图:1)接口 ShapeO Shapeo culArea(Lit); void , a culArea(ListDoubledoub ? 曲 culGirthfListDouble*) : double3)六边形类轲 Heagori昶 a ; doubleA listData : List c HexagonCdojble)令4 cu 1 Area(LfstDquble) : double a culGirthCLkteDoubles- : doub e getListDataO : ListDouble-4)椭圆形类& Ellipseyj a : doub

4、le (ci b ; doublelistData ; Li5rtDouble)匚 E llipsefdouble, double)a culAr(ListcMjble: doubleOd culGirth(List第二部分:实验过程记录(可加页)(代码、运行结果、实验中出现的问题及解决过程)Shape接口 :import java 、util 、List;public in teface Shapepublic double culArea(List list ); public double culGirth(Listlist );六边形类Hexagon:import java 、util

5、 、*;public class Hexag on impleme nts Shapeprivate double a;List listData=new ArrayList();public Hexag on( double a)this 、a = a; listData 、add(a);Overridepublic double culArea(List list) double s=0;s=Math、sqrt(3)*3*Math 、pow(list 、get(0), 2)/2; return s;Overridepublic double culGirth(List list) doub

6、le l=0;l=list 、get(0)*6;return l;public List getListData() return listData;三角形类Triangle:import java 、util 、*;public class Triangleimplements Shape privatedoublea;privatedoubleb;privatedoublec;privatedoubleh;ListlistData =new ArrayList();publicTrian gle(double a)this 、a = a;listData 、add(1、0); listDa

7、ta 、add( a);public Triangle( double a, double this 、a = a;this、b = b;listData 、add(2、0);listData、add( a);listData、add( b);public Triangle( double a, double super ();this 、a = a;this、b = b;this 、c = c;this、h = h;listData 、add(3、0);listData 、add( a);listData 、add( b);listData 、add( c); listData 、add(

8、h);public List getListData()return listData ;public void setListData(Listthis、listData = listData ;Overridepublic double culArea(List double s=0;if(list、get(0)=1、0)s=Math、sqrt (3)*Math 、pow( list if(list、get(0)=2、0)s=list 、get(1)* list 、get(2)/2; if(list、get(0)=3、0)s=list 、get(1)* list 、get/2; retur

9、ns;Overridepublic double culGirth(List double l =0;if (list 、get(0)=1、0)l =3* list 、get(1); if (list 、get(0)=2 、0)b) b, double c, doublelistData )list )、get(1), 2)/4;list ) h)2)+Math、 if l =list 、get(1)+ list 、get(2)+Math 、sqrt (Math、pow( list 、get(1), pow( list 、get(2), 2);(list=listreturn、get(0)=3

10、 、0)、get(1)+ list 、get(2)+list 、get(3);ShapesDemo:ShapesDemo public static menuStrip ();public staticScanner sc =public测试类classvoid main(Stringvoid menu Strip()args )igchoice =null ;System、out、println(选择需要计算面积与周长的图形形状System、out、println(1、三角形);System、out、println(2、正六边形);System、out、println(3、椭圆形);Syst

11、em、out、println(4、退出);System、out、println(请输入选项【1-4 );new Sea nn er(System、in );do 。);choice = switch ( case 1 case 1 case 1 case 1 default menu Strip1234IIIIIIsc、n ext();choice ) :optio n1 ();:option2 ();:option3 ();break ; break ; break ;:System、exit (0);:System、err、println(输入错误!);();II while (!(pri

12、vate staticchoice、equals( 4 ); void option 1()Scanner sc1 = new Scanner(System 、in);StringtempChoice =null ;System、out、println(System、out、println(System、out、 println(请选择需要三角形的类型。);1、等边三角形); 2、直角形);System、out、println( 3、普通);System、out、println(请输入选项【1-3】(返回上一级请输入0); tempChoice =sc1、next();if (tempChoice、equals( 1) try for (;)System、out、pr

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 活动策划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号