Java实现部门员工管理

2022-09-03 15:39:48 63 0
魁首哥

本文实例为大家分享了Java实现部门员工管理的具体代码,供大家参考,具体内容如下

项目作业:部门员工管理

题目要求:

某公司要开发内部的 “办公信息化管理系统”,请使用面向对象的思想描述以下员工信息。

程序运行参考效果图如下:

任务描述

一、程序整体要求

划分功能模块,根据题目要求设置不同的包和类,在类中实现相应功能的管理。

类的标识要清楚易懂,代码结构要层次分明,代码编辑思路要清晰、整洁。

要求Java代码书写、命名符合规范,属性所属数据类型要准确合理,在代码中添加必要的注释,程序运行效果与提供的页面效果图、结构保持一致,信息间分隔符“=”号数量不做统一要求,文字大小、颜色也不做统一要求,将作业项目形成压缩文件并提交。

二、思路分析

由场景和运行效果,可以分析出项目中可以抽取如下类(要求编码时注意面向对象思想及封装特性的应用):

1、部门类:

类型描述:能够描述部门编号、部门名称、员工数组、统计部门中的员工个数

要求:设定方法统计该部门员工个数

提示:部门类的属性有四个,分别是部门编号,部门名称,员工数组 和 统计变量 ,具体是市场部还是人事部,是通过部门类的对象来表示的,如果是市场部的对象,那么添加并统计的就是市场部的人数,同样如果是人事部的对象,添加并统计的就是人事部的人数。

2、职务类:

类型描述:能够描述职务编号、职务名称。

3、员工类:

类型描述:能够描述员工姓名、工号、年龄、性别、所属部门、职务信息

要求:

1、 设定方法限定年龄只能是18--65之间,反之则设置默认为18岁

2、 设定方法限定性别只能是“男”或者“女”,反之则设置默认为"男"(使用字符串的equals()方法)

3、 设定方法,实现员工自我介绍信息,将员工信息作为字符串返回

4、测试类:

类型描述:测试程序,并参照效果图输出结果

注意:可以在属性上添加适当的信息验证,提高信息的安全性

评分标准:

1、规范【10分】

每个类都封装在自己独立的 ".java"文件中;

文件、class、成员变量命名规范;

代码结构要层次分明;

Java代码规范及添加适量注释。

2、程序整体运行效果【10分】

程序正常运行效果,且满足效果图要求。信息间分隔符“=”号数量不做统一要求

3、部门类【22分】

能够描述部门编号、部门名称、获取所有该部门员工信息;设定方法,完成统计该部门员工个数的功能

4、职务类【6分】

能够描述职务编号、职务名称

5、员工类【34分】

能够描述员工姓名、工号、年龄、性别、所属部门、职务信息;

设定方法来约束年龄的范围;

设定方法来限定性别的选择;

设定方法,实现员工自我介绍信息,将员工信息作为字符串返回

6、测试类【18分】

测试程序,将题目中的员工信息传入到程序中,参照效果图输出结果

package com.staff;

//部门类
public class Department{
 private String DNumber;  //部门编号
 private String DName;   //部门名称
 private Staff[] Staff=new Staff[10]; //定义一个Staff类的员工数组
 private int StaffNum;   //员工人数
 public void setDNumber(String DNumber)
 {
   this.DNumber=DNumber;
 }
 public String getNumb0er()
 {
   return DNumber;
 }
 public void setDName(String DName)
 {
   this.DName=DName;

 }
 public String getDName(){
   return DName;
 }
 public void setStaff(Staff Staff[])
 {
   this.Staff=Staff;

 }
 public Staff[] getStaff()
 {
   return Staff;

 }
 public void setStaffNum(int StaffNum)
 {
   this.StaffNum=StaffNum;

 }
 public int getStaffNum()
 {
   return StaffNum;

 }
 //定义构造方法,获得DNumber和DName的值
 public Department(String DNumber,String DName){
   this.setDNumber(DNumber);
   this.setDName(DName);
 }
 /*将员工保存到数组中*/
 public void togetherStaff(Staff Sta){
   for (int i=0;i<this.getStaff().length;i++){
     if(this.getStaff()[i]==null){
       this.getStaff()[i]=Sta;
       this.StaffNum=i+1;
       return;
     }
   }
 }
}
package com.staff;

//职务类
public class Office{
 private String ONumber;  //职务编号
 private String OName;   //职务名称
 public void setONumber(String ONumber)
 {
   this.ONumber=ONumber;

 }
 public String getONumber(){

   return ONumber;
 }
 public void setOName(String OName){

   this.OName=OName;
 }
 public String getOName()
 {
   return OName;

 }
 //定义构造方法,获得ONumber和OName的值
 public Office(String ONumber,String OName){
   this.setONumber(ONumber);
   this.setOName(OName);
 }
}
package com.staff;

//员工类
public class Staff{
 private String Name;   //员工姓名
 private String Number;  //员工工号
 private int Age;     //员工年龄
 private String Sex;   //员工性别
 private Department department; //员工所属部门
 private Office officeInfo;   //员工职务信息

 public void setName(String name){

   this.Name=name;
 }
 public String getName(){

   return Name;
 }
 public void setNumber(String Number){

   this.Number=Number;
 }
 public String getNumber(){

   return Number;
 }
 public void setAge(int Age){
   if (Age<18||Age>65){
     System.out.println("年龄只能在18~65岁之间,如果不在,则默认为18岁");
     this.Age=18;
   }
   else
     this.Age=Age;
 }
 public int getAge(){

   return Age;
 }
 public void setSex(String Sex){
   if(!Sex.equals("男") && !Sex.equals("女")){
     System.out.println("输入性别有误,默认值为男");
     this.Sex="男";
   }
   else
     this.Sex=Sex;
 }
 public String getSex(){

   return Sex;
 }

 public void setDepartment(Department department) {

   this.department=department;
 }
 public Department getDepartment(){

   return department;
 }

 public void setOfficeInfo(Office officeInfo) {

   this.officeInfo = officeInfo;
 }
 public Office getOfficeInfo(){

   return officeInfo;
 }
 //定义构造方法,分别获得员工姓名,员工工号,员工性别,员工姓名,员工所属部门,员工职务信息
 public Staff(String Name,String Number,String Sex,int Age,Department department,Office officeInfo){
   this.setName(Name);
   this.setNumber(Number);
   this.setSex(Sex);
   this.setAge(Age);
   this.setDepartment(department);
   this.setOfficeInfo(officeInfo);
 }
 //定义普通方法,返回员工所有基本信息
 public String staffIntroduction(){
   return "姓名:"+ this.getNamephp()+"\n工号:"+ this.getNumber()+"\n年龄:"+ this.getAge()+"\n性别:"+ this.getSex()+"\n职务:"+ this.getDepartmphpent().getDName()+ this.getOfficeInfo().getOName();
 }
}
package com.staff;

//员工类
public class Staff{
 private String Name;   //员工姓名
 private String Number;  //员工工号
 private int Age;     //员工年龄
 private String Sex;   //员工性别
 private Department department; //员工所属部门
 private Office officeInfo;  恰卡编程网 //员工职务信息

 pubandroidlic void setName(String name){

   this.Name=name;
 }
 public String getName(){

   return Name;
 }
 public void setNumber(String Number){

   this.Number=Number;
 }
 public String getNumber(){

   return Number;
 }
 public void setAge(int Age){
   if (Age<18||Age>65){
     System.out.println("年龄只能在18~65岁之间,如果不在,则默认为18岁");
     this.Age=18;
   }
   else
     this.Age=Age;
 }
 public int getAge(){

   return Age;
 }
 public void setSex(String Sex){
   if(!Sex.equals("男") && !Sex.equals("女")){
     System.out.println("输入性别有误,默认值为男");
     this.Sex="男";
   }
   else
     this.Sex=Sex;
 }
 public String getSex(){

   return Sex;
 }

 public void setDepartment(Department department) {

   this.departmenjavascriptt=department;
 }
 public Department getDepartment(){

   return department;
 }

 public void setOfficeInfo(Office officeInfo) {

   this.officeInfo = officeInfo;
 }
 public Office getOfficeInfo(){

   return officeInfo;
 }
 //定义构造方法,分别获得员工姓名,员工工号,员工性别,员工姓名,员工所属部门,员工职务信息
 public Staff(String Name,String Number,String Sex,int Age,Department department,Office officeInfo){
   this.setName(Name);
   this.setNumber(Number);
   this.setSex(Sex);
   this.setAge(Age);
   this.setDepartment(department);
   this.setOfficeInfo(officeInfo);
 }
 //定义普通方法,返回员工所有基本信息
 public String staffIntroduction(){
   return "姓名:"+ this.getName()+"\n工号:"+ this.getNumber()+"\n年龄:"+ this.getAge()+"\n性别:"+ this.getSex()+"\n职务:"+ this.getDepartment().getDName()+ this.getOfficeInfo().getOName();
 }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

收藏
分享
海报
0 条评论
63
上一篇:java实现简单点赞功能 下一篇:Java利用位运算实现比较两个数的大小

本站已关闭游客评论,请登录或者注册后再评论吧~

忘记密码?

图形验证码