浙大城院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;