需求说明
定义一个Employee类型的数组来保存员工的信息
提供四个功能页表来管理员工
功能1:添加员工
功能2:修改员工信息
功能3:删除员工
功能4:员工列表
环境搭建
Main:项目的主入口,调用别的模块
View:主模块,负责菜单的显示和处理用户操作(视图包,UI模块,负责和用户交互)
service:为项目的管理模块,内部管理一组Employee对象,提供最核心的功能,增删改查。(管理包,服务包,包含的都是最核心的业余逻辑)
domain:用来保存实体类,如Employee对象
Employee对象实现
Employee实体类用来存储员工信息
因此需定义:ID,姓名,性别,年龄,电话号码,电子邮件
用private修饰,防止调用数据时误操作,令数据错误
提供get和set方法,以便获取和修改数据
提供say()和toStrng(),用于遍历类中数据
toString():中文 + 数据
say():纯数据
EmployeeService类实现
EmployeeService类管理一组Employee对象
內部定义Employee的对象数组,用构造器参数来作为数组的长度。
定义int类型的realCount,用来记录实际员工的数量,不提供set方法,避免误修改数据
定义int类型total,用于给员工赋予ID
构造器:参数totalCount,为Employee数组赋予长度,无空参和全参的构造器
四个管理员工的方法
**getAllEmployee():**获取全部员工的Employee对象,用for循环遍历,赋值给新数组,realCount作为长度,令新的数组为完美数组(无空指针)
**addEmployee(Employee emp):**添加员工,用于记录员工数量的realCount自增,total自增给员工ID
**getEmployee(int id):**根据ID获取单个员工
**removeEmployee(int id):**根据ID删除员工,for循环查询依次查询员工ID,如果员工中没此ID,就当异常处理。有则令此索引为空,让后面数据依次往前推一位,同时realCount减一
EmployeeView类实现
与用户接触的类
效果如上图
在另外一篇文章中有输入方法的解释,这儿就不讲了
根据用户输入的数据,switch语句选择相应方法,
到此基本功能和环境就搭建好了,等后续完善
项目来源:【尚硅谷】Java项目-EMS员工管理系统:BV1z14y1n7m3