1、上海建桥学院实验报告课程名称: 面向对象程序设计 实验类型: 设计型 实验项目名称: 类的封装 实验地点: 实验日期: 2016 年 4 月 17 日姓名: 朱海 学号: 1521133 班级: 网络中兴 B15-1 成绩: 一、实验目的及要求1掌握包的创建。2掌握访问控制符的使用二、实验环境及要求jdk1.5 以上的开发环境,可使用任何编辑器。三、实验内容及步骤实验一:实现程序,有以下三个要求1.设计正方形类 Square,将其生成在 myapp.graphics 包中,成员变量访问权限设计为私有,设计构造方法以及其他成员方法。2.设计圆类 Circle,将其生成在 myapp.graphi
2、cs 包中,成员变量访问权限为私有,至少提供一个改变圆半径的成员方法。3.主函数实现功能,要求:1)正方形的边长的值来源于命令行2)圆的半径的值来自键盘数据。3)当输入的边长大于半径时,输出圆周长和正方形面积的差值,反之输出圆面积和正方形周长的差值 (若输出的差值为负值,请将其转化为正值)。4)圆的半径和正方形的边长都更改为以前值得两倍,输出圆的面积和正方形的周长。源代码(排版工整):package myapp.graphics;public class Square private double l;public double s()return getl()*getl();public d
3、ouble c()return 4*getl();public double getl() return l;public void setl(double l) this.l = l;package myapp.graphics;public class Circle private double r=0;private final double PI=3.14;public double s()return PI*getr()*getr();double c()return PI*2*getr();public double getc() return PI*2*getr();public
4、 double gets() return PI*getr()*getr();public double getr() return r;public void setr(double r) this.r = r;package myapp.graphics;import myapp.graphics.Square;import myapp.graphics.Circle;import java.util.Scanner;public class Test public static void main(Stringargs)double c;Square sq1=new Square();S
5、canner scan=new Scanner(System.in);double a=Double.parseDouble(args0);sq1.setl(a);Circle b=new Circle();System.out.println(“请输入半径“ );b.setr(scan.nextDouble();if(sq1.getl()b.getr()c=b.getc()-sq1.s();elsec=b.s()-sq1.c();if(c0)c=Math.abs(c);System.out.print(c);double sdouble=4*b.gets();double cdouble=2
6、*sq1.c();System.out.println(“周长为“ +cdouble+“面积为“+sdouble);结果(截图):实验二:设计程序实现两个复数的相加操作。设计一个复数类 Complex,具体要求私有成员变量:实部,虚部方法:返回此复数的详细信息 String toString(),输出格式例如 3+4i实现 Complex add(Complex cplx)方法,实现复数的相加构造方法:有参构造方法初始化成员变量主函数:产生两个复数,输出复数相加的结果(新复数)提示:根据需要可自行添加成员方法源代码(排版工整):package fushu;import java.util.Sc
7、anner;public class complex public static complex c1;public static complex c2;private int r=0;private int z=0;void getcomplex(int r, int z)this.r=r;this.z=z;public static void main(Stringargs)System.out.println(“请输入第一个复数的实部和虚部 “);complex.c1=new complex();Scanner scan=new Scanner(System.in);int r1=sca
8、n.nextInt();int z1=scan.nextInt();System.out.println(“请输入第二个复数的实部和虚部 “);Scanner scan1=new Scanner(System.in);complex.c2=new complex();int r2=scan1.nextInt();int z2=scan1.nextInt();complex complex=new complex();complex.r = r1+r2;complex.z = z1+z2;System.out.println(complex.r+“+“ +complex.z+“i“);结果(截图):四、分析与讨论(实验过程中发现的重点与难点)通过本次实验我掌握了包的创建并且基本掌握了访问控制符的使用,并且学了一下复数的基本概念,以及掌握了有参构造方法初始化成员变量。