类与对象基础实验(一)实验报告
浙大城院java实验报告
浙江大学城市学院实验报告
课程名称 面向对象程序设计
实验项目名称 类与对象基础实验(一) 学生姓名 专业班级 学号
一. 实验目的和要求
1. 掌握对象与类的关系
2. 掌握类的域、方法、构造器的概念
3. 掌握对象的创建与初始化
4. 掌握方法和域(静态和非静态)的使用方式
5. 掌握Math类,掌握静态成员的使用方式
6. 理解方法和构造器重载现象
二. 实验内容
1. 程序阅读并回答问题
2. 类的使用
3. 编程实验:猜数字
4. 编程实验:素数判断与统计
三. 实验结果与分析(可将程序运行结果截屏,也可分析运行结果)
1. . 程序阅读并回答问题:阅读实验讲义的对应代码,回答以下问题。
(1) 将上述代码编译运行,将运行结果截图。
浙大城院java实验报告
(2) 上述源码中共定义了几个类?分别刻画了哪些数学图形?Triangle类有哪些域和方法?
Triangle的这些域和方法是静态的还是非静态的?
答:定义了三个类,分别刻画了求三角形,梯形,圆的周长以及面积问题 Triangle类中域有double sideA,sideB,sideC,area,length;boolean boo;域是非静态的
方法有double getLength();public double getArea()以及public void setABC(double a,double b,double c)方法也是非静态的
(3) 类和对象是什么关系?请从上述AreaAndLength.java中举例说明如何创建对象。
答:类是对象的模版,对象是类的一个实例
对象的创建利用构造器,比如在Triangle中存在着构造器Triangle(){};在最后的main函数中存在着triangle =new Triangle(3,5,4);创建函数对象并且赋值
(4) Triangle类中出现的Math.sqrt是什么?请举例说明Math类中还有哪些常用域和方法?
答:Math.sqrt为数学类中求开平方的静态方法
area=Math.PI*radius*radius;得知math中存在Math.PI常用域
常用的方法有Math.random()返回随机数字等
(5) 静态域和方法与非静态域和方法在使用时有什么区别?请从上述AreaAndLength.java中
举例说明。
答:调用非静态域和方法的时候是对象引用.非静态方法名(参数)或者对象引用.非静态域名,例如area=circle.getArea();
调用静态域和方法的时候是类名.静态方法名()和类名.静态域名,例如length=2*Math.PI*radius;
(6) 什么是构造器?构造器与一般方法的区别是什么?构造器可以重载吗?请从上述
AreaAndLength.java中举例说明。
答:构造器用于创建对象并初始化对象状态,区别在于构造器没有返回类型但是方法有返回类型,且构造器一般通过调用new调用构造器来创建对象,而方法没有这种调用方式
构造器可以重载
例如Triangle(){};和 public Triangle(double a,double b,double c)
2. 已有Rectangle类(矩形类),它有两个浮点型属性length(长)和width(宽)。该类具有两个构造函数(无参和有参),perimeter()和area()方法分别返回矩形的周长和面积, 请编写相应的包含main方法的类和main方法来测试Rectangle类。(程序结构参考讲义)
(1) 请将源码编写完整如下:
import java.util.Scanner;
浙大城院java实验报告
class Rectangle{
double length,width;
}
public class Text2 {
public static void main(String args[]){
//请用无参构造函数创建矩形a,用有参构造函数创建矩形b
Scanner scanner=new Scanner(System.in);
} System.out.println("请输入矩形a的长和宽 :"); Rectangle r1=new Rectangle(); r1.length=scanner.nextInt(); r1.width=scanner.nextInt(); System.out.println("请输出矩形a的周长和面积:"); System.out.println( "矩形a的周长" + r1.perimeter()); System.out.println( "矩形a的面积:" + r1.area()); Rectangle rectangle = new Rectangle(10,15); System.out.println("请输出矩形b的周长和面积:"); System.out.println( "矩形b的周长" + rectangle.perimeter()); Rectangle(){}; Rectangle(double alength,double awidth){ } public double perimeter(){//矩形的周长 return (length+width)*2; } public double area(){//矩形的面积 return length*width; } length=alength; width=awidth; System.out.println( "矩形b的面积:" + rectangle.area()); }
(2) 程序运行结果截图如下:
浙大城院java实验报告
3. 编程实验:猜数字。程序运行的界面截屏如下:
4. 编程实验:素数判断与统计。程序运行的界面截屏如下:
四. 讨论、心得(可写遇到的问题及解决方法,或者对技术的理解等) 构造器以及方法使用 等
…… 此处隐藏:721字,全部文档内容请下载后查看。喜欢就下载吧 ……- 基于PLC控制的航空电镀生产线自动输送
- 中考预测课内外文言文对比阅读2
- 2018-2023年中国商业智能(BI)产业市场
- 中国金融体制改革研究2011new
- 外窗淋水试验方案
- 精益生产(Lean Production)
- 学校安全事故处置和信息报送制度
- Chapter 5 Human Resources Management
- 【小学数学】人教版小学六年级上册数学
- 初中数学解题方法与技巧
- 山东省创伤中心建设与管理指导原则(试
- 函数与数列的极限的强化练习题答案
- 10分钟淋巴按摩消脂
- 网络应急演练预案
- 服装设计入门基础知识
- 初二数学分式计算题练习
- (人教新课标)高二数学必修5第二章 数列
- 最新自主创业项目
- 北京大学 无机化学课件 4第4章 配合物
- 贸易公司业务管理制度




