Java项目实例之---学生选课(面向对象复习)

学生选课(面向对象复习)

设计一个学生选课的程序,分别有学生类(Student)和课程类(Course)

学生类的属性有:学号(String),姓名(String),性别(char),所选科目(Course[])

课程有:Java、PHP、JQuery、HTML、CSS、C++、MySQL、Oracle

每个学生必须要选3门课程,可以指定选择哪3门,也可以让系统随机选择,请使用面向对象的封装特性实现在控制台中选课。

//课程类
public class Course {
private String cname[]={"Java","PHP","JQuery","HTML","CSS","C++","MySQL","Oracle"};//课程名称 public String[] getCname() {
return cname;
} public void setCname(String[] cname) {
this.cname = cname;
}
}
//学生类

public class Student {

    private String sno;//学号

    private String name;//姓名

    private String sex;//性别

    private String course[]=new String[3];//选课

    public Student(String sno,String name,String sex){

        this.setSno(sno);

        this.setName(name);

        this.setSex(sex);

    }
public String getSno() { return sno; }
public void setSno(String sno) { this.sno = sno; }
public String getName() { return name; }
public void setName(String name) { this.name = name; }
public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public String[] getCourse() { return course; } public void setCourse(String[] c) { course = c; } }
import java.util.Scanner;

public class StudentTest {

    public static void main(String[] args){

        int i=1;

        String[] st=new String[3];

        Course a=new Course();

        Student stu=new Student("123","lili","女");

        /**

         *  判断是否选择课程,如果是,则输入课程名称,如果否,则随机产生三门课程

         */

        System.out.println("************是否选择课程***********");

        Scanner sc=new Scanner(System.in);

        String s=sc.next();

        switch(s) {

            case "是":

                System.out.println("************请输入所选课程名称:***********");

                for (int n = 0; n < 3; n++) {

                    //生成随机数,工具类

                    Scanner sa = new Scanner(System.in);

                    String one = sa.next();

                    st[n] = one;

                }

                stu.setCourse(st);

                break;

            case "否":

                System.out.println("************随机选择课程:***********");

                for (int n = 0; n < 3; n++) {

                    int j = (int) (Math.random() * 7)+1;

                    String[] c=a.getCname();

                    //System.out.println(c[j]);

                    st[n]=c[j];

                }

                stu.setCourse(st);

                break;

        }

        /**

         * 输出学生信息

         */

        System.out.println("**************学生信息**************");

        System.out.println("学号:"+stu.getSno());

        System.out.println("姓名:"+stu.getName());

        System.out.println("性别:"+stu.getSex());

        String[] cou=stu.getCourse();

        System.out.print("所选课程:");

        for(int y=0;y<3;y++){

            System.out.print(cou[y]+"  ");

        }

    }

}

运行结果:

************是否选择课程***********

************请输入所选课程名称:***********

PHP

CSS

C++

**************学生信息**************

学号:123

姓名:lili

性别:女

所选课程:PHP  CSS  C++

************是否选择课程***********

************随机选择课程:***********

**************学生信息**************

学号:123

姓名:lili

性别:女

所选课程:PHP  JQuery  MySQL

上一篇:Vue把父组件的方法传递给子组件调用(评论列表例子)


下一篇:简单登录注册实现(Java面向对象复习)