Java實(shí)現(xiàn)企業(yè)員工管理系統(tǒng)
基于Java的簡(jiǎn)單的企業(yè)員工管理系統(tǒng),供大家參考,具體內(nèi)容如下
首先創(chuàng)建了一個(gè)員工類
定義員工應(yīng)有的屬性:工號(hào)、姓名、性別、職位、年齡、工資、部門
/** 員工屬性 */?? ? private int sno;//工號(hào) private String name;//姓名 private String sex;//性別 private String job;//職位 private int age;//年齡 private int money;//工資 private String section;//部門
用eclipse快捷鍵Alt+s/快速生成與其屬性get/set方法與Constructor構(gòu)造器
public Emp(int sno, String name, String sex, String job, int age, int money, String section) {
?? ??? ?this.sno = sno;
?? ??? ?this.name = name;
?? ??? ?this.sex = sex;
?? ??? ?this.job = job;
?? ??? ?this.age = age;
?? ??? ?this.money=money;
?? ??? ?this.section = section;
?? ?}
?? ?public int getSno() {
?? ??? ?return sno;
?? ?}
?? ?public void setSno(int 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 getJob() {
?? ??? ?return job;
?? ?}
?? ?public void setJob(String job) {
?? ??? ?this.job = job;
?? ?}
?? ?public int getAge() {
?? ??? ?return age;
?? ?}
?? ?public void setAge(int age) {
?? ??? ?this.age = age;
?? ?}
?? ?public int getMoney() {
?? ??? ?return money;
?? ?}
?? ?public void setMoney(int money) {
?? ??? ?this.money = money;
?? ?}
?? ?public String getSection() {
?? ??? ?return section;
?? ?}
?? ?public void setSection(String section) {
?? ??? ?this.section = section;
?? ?}這樣很輕松的就能完成一個(gè)員工類的基本屬性
然后在新建的類中完成對(duì)員工屬性的進(jìn)行實(shí)現(xiàn)的方法
通過構(gòu)造器與方法來實(shí)現(xiàn)對(duì)員工信息的輸出,員工的各個(gè)屬性通過多個(gè)方法去完成。
我這里定義一個(gè)指定長(zhǎng)度的數(shù)組,再通過方法來擴(kuò)大它的容量。
Emp[] list = new Emp[10];
?? ?/** 初始化數(shù)組的索引 */
?? ?public int index = 0;
??? ?public void add(Emp s) {
?? ??? ?list[index++] = s;
?? ?}通過方法能夠輸出員工的屬性
/**對(duì)員工信息的輸出*/
?? ?public void listStu() {
?? ??? ?System.out.println("公民信息:" + "\t" + "工號(hào)" + "\t" + "姓名" + "\t" + "性別" + "\t" + "職位" + "\t" + "年齡" + "\t" + "工資"
?? ??? ??? ??? ?+ "\t" + "部門");
?? ??? ?for (Emp s : list) {
?? ??? ??? ?if (s != null) {
?? ??? ??? ??? ?System.out.println("\t" + s.getSno() + "\t" + s.getName() + "\t" + s.getSex() + "\t" + s.getJob() + "\t"
?? ??? ??? ??? ??? ??? ?+ s.getAge() + "\t" + s.getMoney() + "\t" + s.getSection());
?? ??? ??? ?}
?? ??? ?}
?? ??? ?System.out.println();
?? ?}實(shí)現(xiàn)通過工號(hào)對(duì)員工進(jìn)行查詢、修改和刪除等操作
/** 根據(jù)工號(hào)查詢員工信息 */
?? ?public Emp findBySno(int sno) {
?? ??? ?for (Emp s : list) {
?? ??? ??? ?if (s != null && s.getSno() == sno) {
?? ??? ??? ??? ?System.out.println(
?? ??? ??? ??? ??? ??? ?s.getName() + "/" + s.getSex() + "/" + s.getJob() + "/" + s.getMoney() + "/" + s.getSection());
?? ??? ??? ??? ?System.out.println();
?? ??? ??? ??? ?return s;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?return null;
?? ?}
?? ?/** 根據(jù)工號(hào)更改工資 */
?? ?public void updata(int sno, int money) {
?? ??? ?// 1.查詢出指定工號(hào)的員工
?? ??? ?Emp s = this.findBySno(sno);
?? ??? ?if (s != null) {
?? ??? ??? ?s.setMoney(money);
?? ??? ??? ?System.out.println("您更改員工信息如下:");
?? ??? ??? ?System.out.println(
?? ??? ??? ??? ??? ?s.getName() + "/" + s.getSex() + "/" + s.getJob() + "/" + s.getMoney() + "/" + s.getSection());
?? ??? ?}
?? ?}
?? ?/** 移除數(shù)組中指定位置元素 */
?? ?public Emp remove(int sno) {
?? ??? ?// 獲取需要被移除的元素
?? ??? ?for (int i = 0; i < list.length; i++) {
?? ??? ??? ?Emp emp = list[i];
?? ??? ??? ?if (emp != null && emp.getSno() == sno) {
?? ??? ??? ??? ?sno = i;//找到數(shù)組中sno(工號(hào))對(duì)應(yīng)的位置并且將此地址號(hào)賦給sno(工號(hào))
?? ??? ??? ?}
?? ??? ?}
?? ??? ?/**將找到的sno(工號(hào))對(duì)應(yīng)位置用來查找*/
?? ??? ?Emp s = list[sno];//此時(shí)sno(工號(hào))已經(jīng)換成對(duì)應(yīng)數(shù)組中的位置
?? ??? ?// 將目標(biāo)位置的元素置為0
?? ??? ?list[sno] = null;
?? ??? ?System.arraycopy(list, sno, list, sno + 1, list.length - (sno + 1));
?? ??? ?// 索引相應(yīng)減少
?? ??? ?index--;
?? ??? ?// 將被刪除的元素返回
?? ??? ?listStu();
?? ??? ?return s;
?? ?}這些就是對(duì)于員工信息進(jìn)行修飾和條件判斷的代碼
最后創(chuàng)建一個(gè)類來對(duì)以上信息進(jìn)行輸出
這個(gè)類通過對(duì)象來調(diào)用其他類的方法
// 工號(hào) 姓名 性別 職位 年齡 工資 部門
// sno name sex job age money section
Emp s1 = new Emp(101, "Tryci", "男", "部門經(jīng)理", 23, 8888, "Java");
Emp s2 = new Emp(102, "張三", "男", "項(xiàng)目經(jīng)理", 21, 7777, "C++");
Emp s3 = new Emp(103, "李四", "男", "部門經(jīng)理", 25, 6666, "前端");
Emp s4 = new Emp(104, "王五", "男", "項(xiàng)目經(jīng)理", 24, 5555, "Java");
Emp s5 = new Emp(105, "趙六", "男", "清潔人員", 22, 4444, "衛(wèi)生");
Principal sm = new Principal();
?? ??? ?sm.add(s1);
?? ??? ?sm.add(s2);
?? ??? ?sm.add(s3);
?? ??? ?sm.add(s4);
?? ??? ?sm.add(s5);
?? ??? ?sm.listStu();
?? ??? ?// 根據(jù)工號(hào)查詢員工信息?
?? ??? ?System.out.print("您查詢員工信息: ");
?? ??? ?sm.findBySno(101);
?? ??? ?// 將學(xué)號(hào)為104的學(xué)生的工資更改
?? ??? ?sm.updata(104, 6666);
?? ??? ?// 刪除數(shù)組中第某個(gè)元素
?? ??? ?sm.remove(102);雖然這樣完成了一個(gè)基本的員工信息管理系統(tǒng),但是包含的內(nèi)容與方法技術(shù)含量很低,也不能通過控制臺(tái)等操作來對(duì)信息進(jìn)行錄入和修改.
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
從零開始講解Java微信公眾號(hào)消息推送實(shí)現(xiàn)
微信公眾號(hào)分為訂閱號(hào)和服務(wù)號(hào),無論有沒有認(rèn)證,訂閱號(hào)每天都能推送一條消息,也就是每天只能推送一次消息給粉絲,這篇文章主要給大家介紹了關(guān)于Java微信公眾號(hào)消息推送實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下2022-09-09
如何把spring boot應(yīng)用發(fā)布到Harbor
這篇文章主要介紹了如何把spring boot應(yīng)用發(fā)布到Harbor,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11
java 設(shè)計(jì)模式之依賴倒置實(shí)例詳解
這篇文章主要介紹了java 設(shè)計(jì)模式之依賴倒置,結(jié)合實(shí)例形式詳細(xì)分析了依賴倒置的相關(guān)概念、原理、使用技巧及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2019-11-11
淺談Java實(shí)現(xiàn)面向?qū)ο缶幊蘪ava oop
這篇文章主要介紹了淺談Java實(shí)現(xiàn)面向?qū)ο缶幊蘪ava oop,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07
Springboot Vue可配置調(diào)度任務(wù)實(shí)現(xiàn)示例詳解
這篇文章主要為大家介紹了Springboot Vue可配置調(diào)度任務(wù)實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01

