【问题描述】
4.14 定义一个学生类和一个课程类,要求能够表示现实生活中一个学生可以选择多门课程的情况。编写程序进行测试。
【Java代码】
//Class文件
public class Class {
private String Name;
public String getName() {
return Name;
}
public void setName(String Name) {
this.Name =Name;
}
}
//Student_class文件
public class Student_class {
private String name;
private String course;
private String num;
private String sex;
private int age;
private Class[] c;
//name
public String getName(){
return name;
}
public void setName(String name) {
this.name = name;
}
//course
public String getCourse(){
return course;
}
public void setCourse() {
this.course = course;
}
//num
public String getNum() {
return num;
}
public void setNum(String num) {
this.num = num;
}
//sex
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
//age
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
//Class
public Class[] getC() {
return c;
}
public void setC(Class[] c) {
this.c = c;
}
//构造函数
public Student_class(String num, String course, String name, String sex, int age) {
this.num = num;
this.course = course;
this.age = age;
this.name = name;
this.sex = sex;
}
//打印输出
public void print() {
System.out.println("学号:"+num+"\t班号:"+course+"\t姓名:"+name+"\t性别:"+sex+"\t年龄:"+age);
Class[] c=getC();
System.out.printf("该学生选修了%d门课程\n",c.length);
for(int i=0;i<c.length;i++) {
System.out.printf("第%d门课程为:%s\n",i+1,c[i].getName());
}
}
}
//测试文件
import java.util.Scanner;
public class text {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String num, course, name, sex, CourseName;
int age, CourseNum;
System.out.print("请输入学生学号:");
num = input.next();
System.out.print("请输入学生班级:");
course = input.next();
System.out.print("请输入学生姓名:");
name = input.next();
System.out.print("请输入学生性别:");
sex = input.next();
System.out.print("请输入学生年龄:");
age = input.nextInt();
Student_class stu = new Student_class(num, course, name, sex, age);
System.out.print("请输入学生选修课程门数:");
CourseNum = input.nextInt();
Class[] c = new Class[CourseNum];
for(int i = 0; i < CourseNum; i++) {
System.out.printf("请输入学生选修第%d门课程名称:",i+1);
CourseName = input.next();
c[i] = new Class();
c[i].setName(CourseName);
}
stu.setC(c);
System.out.println("输出学生信息:");
stu.print();
}
}
【测试结果】