武汉理工Java实验报告(二).doc

武汉理工Java实验报告(二).doc

ID:49363467

大小:96.50 KB

页数:9页

时间:2020-02-29

武汉理工Java实验报告(二).doc_第1页
武汉理工Java实验报告(二).doc_第2页
武汉理工Java实验报告(二).doc_第3页
武汉理工Java实验报告(二).doc_第4页
武汉理工Java实验报告(二).doc_第5页
资源描述:

《武汉理工Java实验报告(二).doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、学生学号实验课成绩武汉理工大学学生实验报告书课程名称JAVA语言程序设计开课学院计算机科学与技术学院指导老师学生姓名专业班级2017—2018学年第一学期实验课程名称:JAVA语言程序设计实验项目名称类和对象实验成绩实验者专业班级组别同组者实验日期2017年10月2日第一部分:实验分析与设计(可加页)一、实验内容描述(问题域描述)1.编写一个抽象的二维几何体接口Geometricinterface,其中定义求周长和求面积方法,再编写三角形类其实现Geometricinterface接口,有三个边长属性,编写矩形类继承Geometricinterface接口,有长和宽属性。要求输入相关属性值后,

2、可以求得相应的周长值和面积值。附:求三角形面积其中a,b,c分别为三角形三边长,p为半周长,S为三角形的面积。2.使用面向对象的思想编写计算器,改进第一次试验的第4题,实现加、减、乘、除操作。其中包括一个运算抽象类Operation和各个运算的实现。要求:(1)使用封装;(2)使用继承;(3)使用多态。(4)实现表达式的加、减、乘、除运算。计算:“3+(5*6-4)”实现思路:1)创建抽象类Operation及其子运算类;2)利用数据结构堆栈的思想,解析表达式;(选做,如果不能实现可以定义成员变量运算数1(numA)和运算数2(numB))3)编写测试类TestCalc进行验证。二、实验内容与

3、设计思想1./*几何*/(1)/*三角形类*/publicclassTriangleimplementsGeomInterface{doublea,b,c;//构造方法Triangle(intx,inty,intz){a=x;b=y;c=z;}//求周长publicvoidperimeter(){System.out.println("三角形的周长为"+(a+b+c));}//求面积publicvoidarea(){doublep=(a+b+c)/2;doubleS;S=Math.sqrt(p*(p-a)*(p-b)*(p-c));System.out.println("三角形的面积为"+S)

4、;}}(2)长方形类类似三角形类,略。(3)/*接口*/interfaceGeomInterface{voidperimeter();voidarea();}(4)/*主函数*/publicclassmian{publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstubSquares=newSquare(4,5);Trianglet=newTriangle(3,4,5);s.perimeter();s.area();t.perimeter();t.area();}}2.计算器(1)importjava.util.Scanne

5、r;classoperator{privatecharch;operatorlast;operatornext;publicvoidsetCh(charx){ch=x;}publicchargetCh(){returnch;}}abstractclassOperation{doublenum1,num2,result;abstractdoublegetResult();}classOperationaddextendsOperation{publicOperationadd(doublea,doubleb){//TODOAuto-generatedconstructorstubnum1=a;n

6、um2=b;}doublegetResult(){returnnum1+num2;}}classOperationsubextendsOperation{publicOperationsub(doublea,doubleb){//TODOAuto-generatedconstructorstubnum1=a;num2=b;}doublegetResult(){returnnum1-num2;}}classOperationmulextendsOperation{publicOperationmul(doublea,doubleb){//TODOAuto-generatedconstructor

7、stubnum1=a;num2=b;}doublegetResult(){returnnum1*num2;}}classOperationdivextendsOperation{publicOperationdiv(doublea,doubleb){//TODOAuto-generatedconstructorstubnum1=a;num2=b;}doublegetResult(){returnn

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。