版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验3-1 类与对象1 实验目的1) 本实验的目的是让学生使用类来封装对象的属性和功能2) 学会对象的使用3) 学会构造函数的使用和初始化2 实验要求编写一个Java应用程序,该程序中有3个类:Trangle、Lander和Circle,分别用来刻画“三角形”、“梯形”和“圆形”。具体要求如下:1) Trangle类具有类型为double的三个边,以及周长、面积属性,Trangle类具有返回周长、面积以及修改三个边的功能。此外,Trangle类还具有一个boolean型的属性,该属性用来判断三个数能否构成一个三角形。完成上述操作后,给Trangle再增加3个方法,分别用来返回3个边sideA,
2、sideB, sideC的值。2) Lander类具有类型为double的上底、下底、高、面积属性,具有返回面积的功能。3) Circle类具有类型为double的半径、周长和面积属性,具有返回周长、面积的功能。3 程序运行效果4 模板代码 请按模版要求,将【代码】替换为Java程序代码AreaAndLength.javaclass Trangle double sideA,sideB,sideC,area,length; boolean boo; public Trangle(double a,double b,double c) 【代码1】 /参数a,b,c分别赋值给sideA,sideB
3、,sideC if(【代码2】) /a,b,c构成三角形的条件表达式 【代码3】 /给boo赋值。 else 【代码4】 /给boo赋值。 double getLength() 【代码5】 /方法体,要求计算出length的值并返回 public double getArea() if(boo) double p=(sideA+sideB+sideC)/2.0; area=Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC) ; return area; else System.out.println(不是一个三角形,不能计算面积); return 0; publ
4、ic void setABC(double a,double b,double c) 【代码6】 /参数a,b,c分别赋值给sideA,sideB,sideC if(【代码7】) /a,b,c构成三角形的条件表达式 【代码8】 /给boo赋值。 else 【代码9】 /给boo赋值。 class Lader double above,bottom,height,area; Lader(double a,double b,double h) 【代码10】 /方法体,将参数a,b,c分别赋值给above,bottom,height double getArea() 【代码11】 /方法体,,要求计
5、算出area返回 class Circle double radius,area; Circle(double r) 【代码12】 /方法体 double getArea() 【代码13】 /方法体,要求计算出area返回 double getLength() 【代码14】 /getArea方法体的代码,要求计算出length返回 void setRadius(double newRadius) radius=newRadius; double getRadius() return radius; public class AreaAndLength public static void ma
6、in(String args) double length,area; Circle circle=null; Trangle trangle; Lader lader; 【代码15】 /创建对象circle 【代码16】 /创建对象trangle。 【代码17】 /创建对象lader 【代码18】 / circle调用方法返回周长并赋值给length System.out.println(圆的周长:+length); 【代码19】 / circle调用方法返回面积并赋值给area System.out.println(圆的面积:+area); 【代码20】 / trangle调用方法返回周长
7、并赋值给length System.out.println(三角形的周长:+length); 【代码21】 / trangle调用方法返回面积并赋值给area System.out.println(三角形的面积:+area); 【代码22】 / lader调用方法返回面积并赋值给area System.out.println(梯形的面积:+area); 【代码23】 / trangle调用方法设置三个边,要求将三个边修改为12,34,1。 【代码24】 / trangle调用方法返回面积并赋值给area System.out.println(三角形的面积:+area); 【代码25】 / tr
8、angle调用方法返回周长并赋值给length System.out.println(三角形的周长:+length); class Trangle double sideA,sideB,sideC,area,length; boolean boo; public Trangle(double a,double b,double c) sideA=a; sideB=b; sideC=c; /参数a,b,c分别赋值给sideA,sideB,sideC if(a+bc&a+cb&b+ca) /a,b,c构成三角形的条件表达式 boo=true; /给boo赋值。 else boo=false; /给
9、boo赋值。 double getLength() if(boo) return sideA+sideB+sideC;/方法体,要求计算出length的值并返回 else System.out.println(不是一个三角形,不能计算周长!); return 0; public double getArea() if(boo) double p=(sideA+sideB+sideC)/2.0; area=Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC) ; return area; else System.out.println(不是一个三角形,不能计算面积!
10、); return 0; public void setABC(double a,double b,double c) sideA=a; sideB=b; sideC=c; /参数a,b,c分别赋值给sideA,sideB,sideC if(a+bc&a+cb&b+ca) /a,b,c构成三角形的条件表达式 boo=true; /给boo赋值。 else boo=false; /给boo赋值。 class Lader double above,bottom,height,area; Lader(double a,double b,double h) above=a; bottom=b; hei
11、ght=h;/方法体,将参数a,b,c分别赋值给above,bottom,height double getArea() return (above+bottom)*height/2; /方法体,,要求计算出area返回 class Circle double radius,area; Circle(double r) radius=r; /方法体 double getArea() return (radius*radius*3.14); /方法体,要求计算出area返回 double getLength() return (2*radius*3.14);/getArea方法体的代码,要求计算
12、出length返回 void setRadius(double newRadius) radius=newRadius; double getRadius() return radius; public class test public static void main(String args) double length,area; Circle c=new Circle(3); /创建对象circle Trangle t=new Trangle(3,4,5);/创建对象trangle。 Lader l=new Lader(3,4,5); /创建对象lader length=c.getLe
13、ngth(); / circle调用方法返回周长并赋值给length System.out.println(圆的周长:+length); area=c.getArea(); / circle调用方法返回面积并赋值给area System.out.println(圆的面积:+area); System.out.println(sideA:+t.sideA); System.out.println(sideB:+t.sideB); System.out.println(sideC:+t.sideC); length=t.getLength(); / trangle调用方法返回周长并赋值给length System.out.println(三角形的周长:+length); area=t.getArea(); / trangle调用方法返回面积并赋值给area System.out.println(三角形的面积:+area); area=l.getArea(); / lader调用方法返回面积并赋值给area System.out.println(梯形的面积:+area); t.se
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 药剂科镇痛药物使用指南
- 脑卒中急性期护理措施培训计划
- 离婚协议书房产归孩子继承
- 应有格物致知精神-状元大课堂教案设计
- 放射科CT扫描操作规范指南
- 2026河北保定交通发展集团有限公司招聘27人备考题库附参考答案详解(综合题)
- 2026中兴财经暑假实习生招聘备考题库附参考答案详解(培优a卷)
- 2026内蒙古呼和浩特职业技术大学第二批人才引进23人备考题库带答案详解(突破训练)
- 术后疤痕护理指南
- 2026云南玉溪市红塔区凤凰街道葫田社区居民委员会社区专职网格员招聘1人备考题库及答案详解(必刷)
- 2026内蒙古环投集团社会招聘17人考试参考试题及答案解析
- GB/T 4343.2-2026家用电器、电动工具和类似器具的电磁兼容要求第2部分:抗扰度
- 2026年扬州市广陵区事业单位公开招聘工作人员37人笔试参考题库及答案解析
- 2026上半年北京事业单位统考大兴区招聘137人备考题库(第一批)新版附答案详解
- 2026年南宁教师编制考试试题及答案
- 广东省化工(危险化学品)企业安全隐患排查指导手册(工业气体生产经营企业专篇)
- 校医院内部财务管理制度
- 2025年智能家居安防服务协议
- 2026年兰考三农职业学院单招职业适应性测试题库附答案详解(黄金题型)
- 多病原体整合监测工作方案(2025版)
- 施工管理措施方案
评论
0/150
提交评论