• Java实现基于继承关系改进学生选课模拟系统


    基于继承关系改进学生选课模拟系统

    介绍

    基于实验二,利用继承关系改进学生选了模拟系统

    实验目的

    1.掌握权限访问控制修饰符的使用。
    2.掌握继承的使用。

    业务要求

    1.保持实验二的代码和 readme 版本不变;
    2.新建代码仓库,在实验二代码的基础上完成本次实验;
    3.业务过程同实验二,但在类的设计上,采用父类-子类的继承关系定义。
    4.测试实体类分别存放于不同的 package 中,验证权限访问控制、继承后属性及方法的可见性。

    实验要求

    1.提交源程序到 gitee 或 GitHub;
    2.代码仓库命名为“实验三继承关系”写实验报告文件(readme.md);
    3.体现本次实验在实验二基础上的改进;

    解题步骤

    1.基于实验二的程序,找出拥有共同属性的不同类。如 Teacher 和 Student 都属于“人”。
    2.根据 1 中关系,创建一个包含 Teacher 和 Student 中共同属性的父类 Person。
    3.在父类 Person 中定义 Student 和 teacher 共有的属性,即:“Name”,“Id”,“sex”。
    4.在父类中创建子类共有的方法。
    5.除上述操作外,其余部分保持不变。

    核心代码

    1.父类:共同属性和方法包括 Id,Name,sex

    public class Person {
    	protected int Id;
    	protected String Name;
    	protected String sex;	
    	public Person() {
    	} 
    	public int getId() {
    		return Id;
    	}
    	public void setId(int Id) {
    		this.Id = Id;
    	}
    	public String getName() {
    		return Name;
    	}
    	public void setPerName(String Name) {
    		this.Name = Name;
    	}
    	public String getsex() {
    		return sex;
    	}
    	public void setSex(String sex) {
    		this.sex = sex;
    	}
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24

    2.删除实验二中子类的共同属性
    (1)Teacher

    public class Teacher extends Person {
    //	private String Name;
    //	private int Id;
    //    private String sex;  
        private Course[] cours;
        public Teacher() {
            cours= new Course[3];
        }
        public Teacher(int Id,String Name,String sex){
            this.Id = Id;
            this.Name = Name;
            this.sex = sex;  
            cours = new Course[3];
        }                                                  
    //    public int getId() {
    //        return Id;
    //    }
    //    public void setId(int Id) {
    //        this.Id = Id;
    //    }
    //    public String getSex() {
    //		return sex;
    //	}
    //	public void setSex(String sex) {
    //		this.sex = sex;
    //	}
    //	public String getName() {
    //        return Name;
    //    }
    //    public void setTeacherName(String Name) {
    //        this.Name = Name;
    //    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32

    (2)student

    public class Student extends Person{
    //	private String stuName;
    //    private int stuId;
    //    private String sex;
        private String Zhuanye;
        private String Minzu;
        private Course[] courses;
        public Student() {
            courses = new Course[3];
        }
        public Student(int stuId,String stuName,String sex,String minzu,String zhuanye) {
            this.Id = stuId;
            this.Name = stuName;
            this.sex = sex;
            this.Minzu = minzu;
            this.setZhuanye(zhuanye);
            courses = new Course[3];
        }
    //    public String getStuName() {
    //        return stuName;
    //    }
    //
    //    public void setStuName(String stuName) {
    //        this.stuName = stuName;
    //    }
    //    public int getStuId() {
    //        return stuId;
    //    }
    //    public void setStuId(int stuId) {
    //        this.stuId = stuId;
    //    }
    //    public String getsex() {
    //		return sex;
    //	}
    //	public void setsex(String sex) {
    //		this.sex = sex;
    //	}
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37

    系统运行截图

    在这里插入图片描述
    在这里插入图片描述

  • 相关阅读:
    DFS——迷宫
    git中如何获取远程仓库的最新代码?
    Git--本地仓库
    KVM报错:Unable to connect to libvirt qemu:///system. 确定 ‘libvirtd’ 守护进程正在运行。
    三十七、【进阶】SQL的explain
    go 字符串操作
    传统堡垒机数据可以迁移到云堡垒机上吗?方式有哪些?
    MyBatis-Plus生成sql语句时怎么知道表名和表的字段名,表的主键名的
    榜一的蔑视!阿里专家手写Spring全家桶笔记,整2000页
    Graphviz安装教程
  • 原文地址:https://blog.csdn.net/sheziqiong/article/details/125992326