资源简介
实验1 类的定义、对象数组的使用
1. 定义一个学生类(Student),
属性有
1)非静态属性String studentNumber
2)非静态属性String studentName
3)非静态属性int markForMaths
4)非静态属性int markForEnglish
5)非静态属性int markForScience
方法有:
1)构造方法Student(String number, String name)
2)构造方法Student()
3)String getNumber()
4)String getName()
5)void enterMarks(int markForMaths, int markForEnglish, int markForScience)
6)int getMathsMark()
7)int getEnglishMark()
8)int getScienceMark()
9)double calculateAverage()
10)String toString() 返回学生信息,包括学号、姓名、数学成绩、英语成绩、科学成绩、平均成绩。
注意:为了保证calculateAverage返回double类型,需要把三个分数的和除以3.0,而不是3.
另外,分数的初始值是什么?如果每个分数初始值为0,会造成混淆,分数为0表示还没有输入分数,还是分数确实为0?有更好的初始值吗?
编写Student类,并且编写一个StudentTest类,对Student类进行测试。
StudentTest类运行效果如下:
请输入学生学号:2011211301
请输入学生姓名:王晓
请输入学生三门课成绩(数学,英语,科学):88,79,90
学生信息如下:
学号:2011211301
姓名:王晓
数学成绩:88
英语成绩:79
科学成绩:90
平均成绩:85.66666666666667
2.定义一个StudentList类用来存储Student对象
属性有
1)Student[] list; //list存储学生对象
2)int total; //学生总人数
方法有:
1)StudentList(int length) //length是数组长度
2)boolean add(Student stu) //增加stu到数组中,成功,返回true,否则false
3)boolean remove(int no) //删除第no个数组元素,删除成功,返回true,否则false
4)boolean remove(Student number) //删除学号为number的学生,删除成功,返回true,否则false
5)boolean isEmpty() //判断数组是否为空,若是,返回true,否则false
6)Student getItem(int no) //返回第no个学生
7)Student getItem(Student number) //返回学号为number的学生,若该生不存在,返回null。
8) int getTotal() 返回学生总人数
编写StudentList类,并且编写一个StudentListTest类,对StudentList类进行测试。
StudentListTest类运行效果:
菜单如下,请输入 1~8代表您要执行的操作:
1. 增加1个学生 2. 根据学号删除学生 3. 根据位置删除学生
4. 判断是否为空 5.根据位置返回学生 6.根据学号返回学生
7. 输出全部学生信息 8.退出程序
请输入您的操作:1
请输入学生信息:
学号:2011211301
姓名:王晓
数学成绩:88
英语成绩:79
科学成绩:90
---目前有1个学生,信息为---:
学号:2011211301
姓名:王晓
数学成绩:88
英语成绩:79
科学成绩:90
平均成绩:85.66666666666667
请输入您的操作:1
学号:2011211311
姓名:李辉
数学成绩:80
英语成绩:79
科学成绩:93
---目前有2个学生,信息为---:
学号:2011211301
姓名:王晓
数学成绩:88
英语成绩:79
科学成绩:90
平均成绩:85.66666666666667
姓名:李辉
数学成绩:80
英语成绩:79
科学成绩:93
平均成绩:84.0
请输入您的操作:5
请输入学生位置:10
对不起,没有对应的学生
请输入您的操作:5
请输入学生位置:2
学生信息如下:
姓名:李辉
数学成绩:80
英语成绩:79
科学成绩:93
平均成绩:84.0
请输入您的操作:3
请输入要删除第几个学生:2
删除成功
---目前有1个学生,信息为:
代码片段和文件信息
package liujiajia;
public class _2014211512_刘佳佳_1_Student {
private String studentNumber;
private String studentName;
private int markForMath;
private int markForEnglish;
private int markForScience;
public _2014211512_刘佳佳_1_Student(String numberString name)
{
this.studentNumber=number;
this.studentName=name;
}
public _2014211512_刘佳佳_1_Student()
{
this.studentName=null;
this.studentNumber=null;
}
public String getNumber()
{
return studentNumber;
}
public String getName()
{
return studentName;
}
public int getMathsMark()
{
return markForMath;
}
public int getEnglishMark()
{
return markForEnglish;
}
public int getScienceMark()
{
return markForScience;
}
public void enterMarks(int markForMathint markForEnglishint markForScience)
{
this.markForMath=markForMath;
this.markForEnglish=markForEnglish;
this.markForScience=markForScience;
}
public double calculateAverage()
{
return (markForMath+markForEnglish+markForScience)/3.0;
}
public String toString()
{
return “学生信息如下:\n 学号:“ + studentNumber + “\n姓名:“ + studentName + “\n 数学成绩:“ + markForMath
+ “\n英语成绩:“ + markForEnglish + “\n科学成绩:“ + markForScience + “\n平均成绩:“ + calculateAverage()
+ ““;
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1418 2016-10-27 21:56 homework1\_2014211512_刘佳佳_1_Student.java
文件 2042 2016-10-27 21:56 homework1\_2014211512_刘佳佳_1_StudentList.java
文件 3383 2016-10-27 21:56 homework1\_2014211512_刘佳佳_1_StudentListTest.java
文件 1031 2016-10-27 21:56 homework1\_2014211512_刘佳佳_1_StudentTest.java
目录 0 2016-10-28 21:24 homework1
----------- --------- ---------- ----- ----
7874 5
- 上一篇:WEB超大文件带进度条上传
- 下一篇:北邮java作业1
评论
共有 条评论