类与对象基础实验(一)实验报告.doc_第1页
类与对象基础实验(一)实验报告.doc_第2页
类与对象基础实验(一)实验报告.doc_第3页
类与对象基础实验(一)实验报告.doc_第4页
类与对象基础实验(一)实验报告.doc_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

浙江大学城市学院实验报告课程名称 面向对象程序设计 实验项目名称 类与对象基础实验(一) 学生姓名 专业班级 学号 一. 实验目的和要求 1. 掌握对象与类的关系2.l掌握类的域、方法、构造器的概念3.l掌握对象的创建与初始化4.l掌握方法和域(静态和非静态)的使用方式5.l掌握math类,掌握静态成员的使用方式6. 理解方法和构造器重载现象二. 实验内容 1. 程序阅读并回答问题2. 类的使用3. 编程实验:猜数字4. 编程实验:素数判断与统计三. 实验结果与分析(可将程序运行结果截屏,也可分析运行结果)1. . 程序阅读并回答问题:阅读实验讲义的对应代码,回答以下问题。(1) 将上述代码编译运行,将运行结果截图。答:(2) 上述源码中共定义了几个类?分别刻画了哪些数学图形?triangle类有哪些域和方法?triangle的这些域和方法是静态的还是非静态的?答:上述程序共定义四个类 分别刻画了三角形,梯形,圆形域有:sidea,sideb,sidec,area,length, boo方法有:triangle/判断是否为三角形getlength/给出三角形的周长getarea/给出三角形的面积setabc/判断是否为三角形其中所有的域都为非静态的,所有方法都为非静态方法(3) 类和对象是什么关系?请从上述areaandlength.java中举例说明如何创建对象。答:类是对象的模板,也是对象的类型,描述一组具有相同属性和行为的对象定义一个类。例如class triangle。然后在main方法中定义域,然后给定义好的域调相应的类方法,赋予对象数据并构造。(4) triangle类中出现的math.sqrt是什么?请举例说明math类中还有哪些常用域和方法?答:math.sqrt是math类中的求开根号的方法math.exp(5) 静态域和方法与非静态域和方法在使用时有什么区别?请从上述areaandlength.java中举例说明。答:静态域可被所有对象共享,并且在没有任何对象之前,就可以访问静态域,调用静态方法,并不需要创建这个类的对象;同一非静态域在不同对象之间相互独立,非静态方法的执行必须通过对象,所以需要事先创建该类的某个对象。例如:public static void main(string args)不需要创建对象,当程序运行时自动运行。而其他的类,例如class triangle就需要main中创建好对象才能够调用(6) 什么是构造器?构造器与一般方法的区别是什么?构造器可以重载吗?请从上述areaandlength.java中举例说明。答:构造器用于创建对象,并初始化对象的状态构造器与一般方法的区别:l 构造器的名称必须和类名相同,而方法名不受限制。l 构造器没有返回类型,而方法名则不受限制。l 一般通过new调用构造器来创建对象,而方法则没有这种调用格式。构造器可以重载非静态class triangle public 和 triangle(double a,double b,double c)静态math.sqrt(p*(p-sidea)*(p-sideb)*(p-sidec)2. 已有rectangle类(矩形类),它有两个浮点型属性length(长)和width(宽)。该类具有两个构造函数(无参和有参),perimeter()和area()方法分别返回矩形的周长和面积, 请编写相应的包含main方法的类和main方法来测试rectangle类。(程序结构参考讲义)(1) 请将源码编写完整如下: public class test3 public static void main(string args) rectangle r= new rectangle(); system.out.println(无参周长是: +r.perimeter(); system.out.println( 面积是:+r.area(); r= new rectangle(1,1); system.out.println(有参周长是: +r.perimeter(); system.out.println( 面积是:+r.area(); class rectangle double length,width; rectangle() double alength; double awidth; alength = 1; awidth = 1; length=alength;width=awidth; rectangle(double alength,double awidth)length=alength;width=awidth;public double perimeter()return (length+width)*2;public double area()return length*width;(2) 程序运行结果截图如下:3. 编程实验:猜数字。程序运行的界面截屏如下:源程序:import java.util.*; import java.math.*;public class guessnumpublic static void main(string args)scanner scanner = new scanner(system.in);int num = (int)(math.random()*100 + 1);system.out.println(有一个1-100之间的随机整数,请您猜猜看);system.out.println(请输入您的猜测:);int choice = 0;doif(scanner.hasnextint()choice = scanner.nextint();if(num choice)system.out.println(您猜小了,请继续猜:);if(num choice)system.out.println(您猜大了,请继续猜:);if(num = choice)system.out.println(恭喜您,答对了);while(choice != num);4. 编程实验:素数判断与统计。程序运行的界面截屏如下:源代码:import java.util.*; public class hellostatic boolean isprime(int n) /如果参数n是素数,那么返回true;否则返回falsefor(int i=2;i=math.sqrt(n)+1;i+)if(n = 2)return false;if(n % 2 != 0)return true;elsereturn false;return true; public static void main(string args)scanner scanner =new scanner(system.in);system.out.println(请输入一个区间:(如:1 100));int a = 0,b = 0;doif(scanner.hasnextint()a = scanner.nextint();if(scanner.hasnextint()b = scanner.nextint();if(a0 | b0)system.out.println(请输入两个正整数);while(a=0 | b

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论