Java实验报告三类与对象.doc
文本预览下载声明
福建农林大学计算机与信息学院实验报告
系 信科系 专业 信息与计算科学 年级 2011 成绩 姓名 学号 实验室 田514 机号 32 实验时间 2013.10.30 教师签字 实验(三) 类与对象
一、实验目的和要求
深入理解类和对象
二、实验内容和原理
1. 建立包myPackageA,在包中创建一个矩形类,其中包括计算矩形周长和面积两个方法。在包myPackageB中建立一个Main类,在Main类中使用该矩形类,计算给定长和宽的矩形的周长和面积。
要求:当给定的长或者宽为负数或者0时,应该无法计算。
2. 编写一个Rational(有理数)类,具体要求如下:
① Rational类有两个int型的成员变量,名字分别为fengZi(分子)和fengMu(分母)。
② 提供Rational?add(Ration al?r)方法,即有理数调用该方法与参数指定的有理数做加法运算,并返回一个Rational对象
③ 提供Rational?multi(Rational?r)方法,即有理数调用该方法与参数指定的有理数做乘法运算,并返回一个Rational对象。
④ 为了弱化难度,设参与运算的有理数均为正数。
三、实验环境
硬件环境:
软件环境:JDK1.5
四、算法描述及实验步骤
算法描述(可以用流程图、伪代码或源程序描述)
实验步骤
一、
package myPackageA;
public class 矩形类 {
public double Long,Wide;
public double Girth()
{
if(Long0Wide0){
double result=(Long+Wide)*2;
System.out.println(长为:+Long+,+宽为:+Wide+的矩形);
System.out.print(其周长是+result+;);
return result;}
else
System.out.println(您输入的数据有误);
return 1;
}
public double Area()
{
if(Long0Wide0){
double result=Long*Wide;
System.out.println(其面积是+result);
return result;}
else
return 1;
}
}
package myPackageB;
import myPackageA.*;
public class Main {
public static void main(String args[])
{
矩形类 a=new 矩形类();
a.Long=2;
a.Wide=0; // a.Wide=6;
a.Girth();
a.Area();
}
}
二、
package myPackageC;
public class Rational {
int fengzi,fengmu;
Rational add(Rational r) {
int a=r.fengzi;
int b=r.fengmu;
int newFengzi=fengzi*b+fengmu*a;
int newFengmu=fengmu*b;
Rational result1=new Rational();
result1.fengzi=newFengzi;
result1.fengmu=newFengmu;
int x=newFengzi;
int y=newFengmu;
if(xy) {
int z=x;
x=y;
y=z;
}
int c=x%y;
while(c!=0) {
x=y;
y=c;
c=x%y;
} System.out.println(fengzi+/+fengmu+++r.fengzi+/+r.fengmu+=+newFengzi/y+/+newFengmu/y);
return result1;
}
Rational multi(Rational r){
int a=r.fengzi;
int b=r.fengmu;
int newFengzi=fengzi*a;
int newFengmu=fengmu*b;
Rational result2=new Rational();
result2.fengzi=newFengzi;
result2.fengmu=newFen
显示全部