版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《面向对象技术导论》实验报告学号: 姓名:专业:指导教师:实验内容:实验时间:实验地点:实验二Java基本语法练习【开发语言及实现平台或实验环境】Windows2000或XP,JDK1.6与Jcreator4.0【实验目的】了解Java的数据类型掌握各种变量的声明方式理解运算符的优先级掌握java基本数据类型。运算符与表达式、数组的使用方法理解Java程序语法结构,掌握顺序结构、选择结构和循环结构语法的程序设计方法【实验要求】编写一个声明java不同数据类型变量的程序编写一个使用运算符、表达式、变量的程序编写一个使用java数据的程序编写表达式语句、复合语句的程序编写使用不同选择结构的程序编写使用不同循环结构的程序【实验内容】一、包的应用在Elearning下载ygw.rar文件,进行解压。得到Circle.class、Rect.class和MyWindow.class三个字节码文件,这三个文件都在ygw包中。解压后这三个字节码文件在ygw文件夹中。编写一个程序,把ygw文件夹放到所编写源文件所在的文件夹中,用import导入这三个类,分别定义三个类的对象,求半径为3的圆和长、宽分别为10、5的矩形的面积,定义MyWindow的一个对象后,观察结果,理解封装的好处(不需要知道类的内部细节,就可以方便的使用它,降低编程的难度)。注意:在Jcreator、Netbean等集成开发工具下,当定义了某个类的对象后,例如"Circlec=newCircle();",当输入"c.",当.出现后,将出现该类可用的方法和属性列表,可用鼠标直接选择所要的方法或属性。程序代码:importygw.Circle;importygw.MyWindow;importygw.Rect;classyingyong{publicstaticvoidmain(String[]args){Circlec=newCircle();MyWindowd=newMyWindow();Recte=newRect();e.setHeight(10);e.setWidth(5);c.setRadius(10.0);System.out.println("圆的周长为:"+c.getZhouchang());System.out.println("圆的面积为:"+c.getArea());System.out.println("矩形的周长:"+e.getZhouchang());}}结果:二、三角形和圆柱体的类封装及构造方法的使用(每个类存为不同的.java源文件)(1)创建一个三角形类Triangle,放入以你的姓名为包名的包中。三角形类Triangle包含的属性有三条边的长sideA,sideB,sideC,,这些属性设为private类型;包含的方法有构造方法(两个:一个没有参数,默认三边均为1.0;一个给定三条边的长度,并进行判定给定的三条边是否能组成三角形,如果不能构成三角形则报错),求面积方法getArea(),求周长方法getLength();提示:设三角形的三边长为a,b,c,则它的面积为,其中S=(a+b+c)/2,开平方的方法为Math.sqrt()。packagesx;publicclassTriangle{private doublesideA;private doublesideB;private doublesideC;publicTriangle(){ sideA=1.0;sideB=1.0;sideC=1.0;}publicTriangle(doublea,doubleb,doublec){ if(a+b>c&&a+c>b&&b+c>a){sideA=a;sideB=b;sideC=c;}elseSystem.out.println("不能构造三角形");}publicdoublegetArea(){ doubleS,s; S=(sideA+sideB+sideC)/2; s=Math.sqrt(S*(S-sideA)*(S-sideB)*(S-sideC)); returns;}publicdoublegetLength(){ doublec; c=sideA+sideB+sideC; returnc;}}创建一个圆柱体类YZT,放入以你的姓名为包名的包中。圆柱体类YZT包含的属性有底面半径radius和圆柱体的高height,这些属性设为private类型;包含的方法有构造方法(两个:一个没有参数,默认底面半径和高均为1.0;一个给定半径radius和圆柱体的高height,并且要求均大于0.0,符合实际圆柱体要求,否则报错),包含的方法有设置底面半径setRadius(),获取底面半径getRadius(),设置高setHeight(),获取高getHeight(),求体积calTJ(),求表面积calBMJ();packagesx;publicclassYZT{private doubleheight;private doubleradius;publicYZT(){ radius=1.0; height=1.0; }publicYZT(doubler1,doubleh1){ radius=r1; height=h1;}publicbooleansetRadius(doubler1){ if(r1>0){ radius=r1; returntrue; }else{System.out.println("不能构造圆柱体");returnfalse;}}publicbooleansetHeight(doubleh1){ if(h1>0){ height=h1;returntrue;}else{ System.out.println("不能构造圆柱体");returnfalse;}}publicdoublegetRadius(){ returnradius;}publicdoublegetHeight(){ returnheight;}publicdoublecalTJ(){ returnMath.PI*Math.pow(radius,2)*height;}publicdoublecalBMJ(){ returnMath.PI*Math.pow(radius,2)*2+2*Math.PI*radius*height;}}(3)用import导入三角形类Triangle,用Triangle类定义以下三个对象:定义默认的三角形,求它的面积和周长;定义边长分别为1.0,2.0,5.0的三角形,查看输出错误;定义边长分别为25,20,37.5的三角形,求它的面积和周长;程序代码:importsx.Triangle;classsan{publicstaticvoidmain(String[]args){Trianglec=newTriangle();System.out.println("(1)三角形的周长为:"+c.getLength());System.out.println("三角形的面积为:"+c.getArea());Triangled=newTriangle(1.0,2.0,5.0);System.out.println("(2)三角形的周长为:"+d.getLength());System.out.println("三角形的面积为:"+d.getArea());Trianglee=newTriangle(25,20,37.5);System.out.println("(3)三角形的周长为:"+e.getLength());System.out.println("三角形的面积为:"+e.getArea());}}结果:(4)用import导入圆柱体类YZT,用YZT类定义以下三个对象:定义默认的圆柱体,求它的体积和表面积;定义半径radius和高heigth分别为2.0,-10.5的圆柱体,查看输出错误;定义半径radius和高heigth分别为12.5,11.0的圆柱体,求它的体积和表面积。程序代码:importsx.YZT;classsan{publicstaticvoidmain(String[]args){YZTc=newYZT();System.out.println("(1)\n圆柱体的体积为:"+c.calTJ());System.out.println("圆柱体的表面积为:"+c.calBMJ());YZTd=newYZT(-10.5,2.0);System.out.println("(2)");System.out.println("高"+d.setHeight(-10.5));System.out.println("底面半径"+d.setRadius(2.0));YZTe=newYZT(12.5,11.0);System.out.println("(3)\n圆柱体的体积为:"+e.calTJ());System.out.println("圆柱体的表面积为:"+e.calBMJ());}}结果:三、静态成员的使用(1)使用Math类下的静态方法计算sin30°+tan50°+sqrt(10)的值。程序代码:packagemath;importjava.lang.Math;publicclassmath{ publicstaticvoidmain(String[]args){System.out.println("sin30°+tan50°+sqrt(10)的值为"+(Math.sin(Math.toRadians(30))+Math.tan(Math.toRadians(50))+Math.sqrt(10)));}}结果:声明一个点类Point,有两个private类型变量保存点坐标,一个类变量(静态变量)保存已有点的个数。生成10个点的Point数组,第i个点的坐标为(i,i2),依次生成每一个点,输出每一个点的坐标和当前已有点的个数。程序代码:publicclasspoint{ privateintx;privateinty;publicstaticintpointCount=0;publicpoint(intx,inty){ this.x=x; this.y=y; pointCount++; }publicintgetpoint1(){ returnx; }publi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度施工合同管理及设备租赁服务协议2篇
- 2024年中国阿胶洁面乳市场调查研究报告
- 2024年甲方提供乙方智能语音识别及翻译服务合同
- 2024年中国铁制烛台市场调查研究报告
- 2025年度水利枢纽工程挖掘机施工合同范本2篇
- 2024年绿色农业产品全国招商代理合同3篇
- 2025版辣椒种植与市场销售代理合同3篇
- 2024暑期期间临时工及兼职工雇佣协议版
- 2024年中国薄型钢结构膨胀防火涂料市场调查研究报告
- 2024版国际房地产购买合同
- 选矿厂建设课件
- 部编人教版7-9年级语文目录
- 人教版小学数学五年级上册七单元《数学广角-植树问题》单元集体备课整体设计
- 中国超重肥胖医学营养治疗指南
- 严重精神障碍患者家属护理教育
- 汽车4S店市场部工作计划
- 现代营销学原理课件
- 德语语言学导论智慧树知到期末考试答案2024年
- 拒绝早恋主题班会 课件(34张)2023-2024学年主题班会
- 离婚协议书完整版Word模板下载
- 招标代理机构内部监督管理制度
评论
0/150
提交评论