1、类的设计与封装实验报告浙江大学城市学院实验报告课程名称 面向对象程序设计 实验项目名称 类的设计与封装实验(一) 学生姓名 高宁雯 专业班级 计算1005 学号 31001221 一. 实验目的和要求 1.掌握使用类将对象的属性与功能封装在类中的特点 2.掌握实例方法与构造方法二. 实验内容 1. 分析Time类的设计2. 分析并设计Product类3. 分析并设计Fraction类4. 设计Rectangle类5. 设计Student类及其测试类School类三. 实验结果与分析(可将程序运行结果截屏,也可分析运行结果) 1. 阅读以下关于Time类的代码,分析程序并回答相关的问题impor
2、t java.text.DecimalFormat;public class Timeprivate int hour;private int minute;private int second;Time()hour=0;minute=0;second=0;Time(int h) hour=h;minute=0;second=0;Time(int h,int m)hour=h;minute=m;second=0;Time(int h,int m,int s)hour=h;minute=m;second=s;Time(Time time)this.hour=time.getHour();this
3、.minute=time.getMinute();this.second=time.getSecond();public int getHour()return hour;public int getMinute() return minute;public int getSecond()return second;public String toUniversalString() DecimalFormat twoDigits=new DecimalFormat(00); return twoDigits.format(getHour()+:+ twoDigits.format(getMin
4、ute()+:+ twoDigits.format(getSecond();public String toStandardString() DecimalFormat twoDigits=new DecimalFormat(00); return (getHour()=12| getHour()=0)? 12:getHour()%12)+:+、 twoDigits.format(getMinute()+:+twoDigits.format(getSecond()+(getHour() b) s); int c; for(c = a % b ; c 0 ; c = a % b) a = b;
5、b = c; return b; */分数输出方法void FracOutput( )public static void main(String args) 4.构造一个Rectangle类(矩形类),它有两个浮点型属性length(长)和width(宽)。该类具有两个构造函数(无参和有参),perimeter()和area()方法分别返回矩形的周长和面积, 编写相应的main方法测试Rectangle类。程序结构如下:public class Rectangel/实例变量的声明/构造器的定义/perimeter方法定义/area方法定义public static void main(Str
6、ing args)/定义Rectangle类的对象引用r/调用perimeter方法,并显示周长/调用area方法,并显示面积 5. 设计一个学生类Student, 程序框架如下:public class Student/设计一个类变量(静态变量)记录学生人数private /设计基本属性有“学号”、“班号”、“姓名”、“性别”、“年龄”、“成绩”(用数组表示6门课的成绩)private /设计构造器,传递学生的个人信息public Student( ) /设计方法“获得学号”、“获得班号”、“获得姓名”、“获得成绩”/设计方法“修改年龄”、“修改班号”/设计类方法“获得学生人数” /设计一个
7、类School,用于测试以上Student类public class School public static void main(String args)/创建新学生对象/输出学生的基本信息/测试类变量值的变化class Student/ 设计一个类变量(静态变量)记录学生人数 private static int count=0;/ 设计基本属性有“学号”、“班号”、“姓名”、“性别”、“年龄”、“成绩”(用数组表示6门课的成绩) private int num; private int class_num; private String name; private String sex;
8、 private int age; private int score = new int6;/ 设计构造器,传递学生的个人信息 public Student( ) public Student( int num, int class_num , String name,String sex, int age, int score) this.num = num; this.class_num = class_num; this.name = name; this.sex = sex; this.age = age; this.score = score; / 设计方法“获得学号”、“获得班号
9、”、“获得姓名”、“获得成绩” public int num() return num; public int getClass_num() return class_num; public String getName() return name; public int getScore() return score; / 设计方法“修改年龄”、“修改班号” public void setAge(int age) this.age = age; public void setClass_num(int class_num) this.class_num = class_num; / 设计类方
10、法“获得学生人数”/设计一个类School,用于测试以上Student类public class School public static void main(String args) int a=91,92,93,94,95,96;/ 创建新学生对象 Student s=new Student(3,3,abc,F, 2,a);/ 输出学生的基本信息 int m=s.getScore(); System.out.println(班级为:+s.getClass_num()+n姓名为 :+s.getName(); System.out.println(学生成绩为:); int i; for(i=0;im.length;i+) System.out.println(mi); / 测试类变量值的变化
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1