实践3 类与对象
实践3.4

修改Menu类,增加显示普通员工、经理、管理员对应的功能菜单的方法。

package com.dh.hrmanager.util;import java.util.Scanner;public class Menu {/*** 返回登陆菜单*/public void showLoginMenu() {System.out.println("\n\n\t\t欢迎进入企业人力资源管理系统\n\n");System.out.println("**********************************************************\n");System.out.println("\t\t\t1、登陆系统\n");System.out.println("\t\t\t2、注册系统\n");System.out.println("\t\t\t3、退出系统\n");System.out.println("**********************************************************\n");System.out.println("请输入菜单选项数字:");}Scanner input = new Scanner(System.in);private void returnLoginMenu(Scanner input) {boolean flag = true;do{String num = input.next();if(num.toUpperCase().equals("R")){ flag = false;showLoginMenu();break;}else{System.out.println("具体功能将在后面实验篇实现,现在请输入r/R返回登陆菜单:");}}while(flag);}/*** 普通员工菜单*/public void showStaffMenu(){System.out.println("人力资源管理系统=>普通员工");System.out.println("**********************************************************\n");System.out.println("\t\t\t1、汇报工作\n");System.out.println("\t\t\t2、查看个人信息\n");System.out.println("\t\t\t3、修改密码\n");System.out.println("\t\t\t4、查看测评\n");System.out.println("\t\t\t5、工资范畴\n");System.out.println("\t\t\t6、今日工作\n");System.out.println("\t\t\t7、在线工作交流\n");System.out.println("**********************************************************\n");System.out.println("请输入菜单项数字或者输入r/R返回上一菜单:");returnLoginMenu(input);}/*** 经理主菜单*/public void showManangerMenu(){System.out.println("人力资源管理系统=>部门经理");System.out.println("**********************************************************\n");System.out.println("\t\t\t1、查看工作汇报\n");System.out.println("\t\t\t2、考评员工\n");System.out.println("\t\t\t3、查看个人信息\n");System.out.println("\t\t\t4、修改密码\n");System.out.println("\t\t\t5、工资范畴\n");System.out.println("\t\t\t6、今日工作\n");System.out.println("\t\t\t7、在线工作交流\n");System.out.println("**********************************************************\n");System.out.println("请输入菜单项数字或者输入R/r返回上一菜单:");returnLoginMenu(input);}/*** 显示管理员主菜单*/public void showAdminMenu() {System.out.println("人力资源管理系统=>管理员");System.out.println("**********************************************************\n");System.out.println("\t\t\t1、查看员工信息\n");System.out.println("\t\t\t2、修改员工角色\n");System.out.println("\t\t\t3、查看个人信息\n");System.out.println("\t\t\t4、修改密码\n");System.out.println("\t\t\t5、工资范畴\n");System.out.println("\t\t\t6、今日工作\n");System.out.println("**********************************************************\n");System.out.println("请输入菜单项数字或者输入R/r返回上一菜单");returnLoginMenu(input);}
}

实践3.5
修改测试类StartHr,实现如下功能:
(1)普通员工登陆,跳转到普通员工功能菜单。
(2)经理登陆,跳转到经理功能菜单。
(3)管理员登陆,跳转到管理员功能菜单。

package com.dh.hrmanager.util;import java.util.Scanner;import com.dh.hrmanager.entity.Employee;public class StartHr {public static void main(String[] args) {//角色值1表示普通员工角色,2表示经理角色,3表示管理员角色//部门值1表示市场部,2表示开发部,3表示信息部//实例化普通员工Employee staff = new Employee(1,"DH001","staff","staff",2,1,3000.5);//实例化部门经理Employee manager = new Employee(2,"DH002","Manager","Manager",2,2,6000.5);//实例化管理员Employee admin = new Employee(3,"DH003","Admin","Admin",2,3,4000.5);//实例化菜单Menu menu = new Menu();//显示登陆主菜单menu.showLoginMenu();//循环标志位boolean flag = true;Scanner input = new Scanner(System.in);while(flag) {int choice = input.nextInt();//根据输入不同选项进行不同功能操作switch (choice) {case 1:System.out.println("请输入用户名:");String userName = input.next();System.out.println("请输入密码");String password=input.next();//如果是普通员工if (userName.equals(staff.getUserName())&&password.equals(staff.getPassword()))//显示普通员工功能菜单menu.showStaffMenu();//如果是经理else if(userName.equals(manager.getUserName())&&password.equals(manager.getPassword()))//显示经理功能菜单menu.showManangerMenu();//如果是管理员else if (userName.equals(admin.getUserName())&&password.equals(admin.getPassword()))//显示管理员功能菜单menu.showAdminMenu();else {System.out.println("用户名或密码不正确,请重新输入选项数字:");}break;case 2:System.out.println("本功能将在后面实现篇实现,现在请选择其他选项");menu.showLoginMenu();break;case 3:flag = false;System.out.println("您退出了系统!");break;default:System.out.println("输入选项编号不正确,请重新输入数字:");}if (!flag)break;}}}

JAVA SE程序设计及实践相关推荐

  1. java se程序设计课后答案,JAVA SE程序设计及实践

    实践3 类与对象 实践3.4 修改Menu类,增加显示普通员工.经理.管理员对应的功能菜单的方法. package com.dh.hrmanager.util; import java.util.Sc ...

  2. java se程序设计_JavaSE--Java 的基本程序设计结构

    Java 对大小写敏感 Java 中定义类名的规则很宽松.名字必须以字母开头,后面可以跟字母和数字的任意组合.长度基本上没有限制.但是不能使用 Java 保留字作为类名. 标准的命名规范为:类名是以大 ...

  3. Java SE第0节课  程序设计学习七宗罪

    Java SE第0节课  程序设计学习七宗罪 一.困境和希望 找到工作后,发现自己越来越学不进去,技术原地踏步甚至有所退步.这在程序员这一行,简直就是慢性自杀.思前想后,最初的我是从看张龙老师的视频入 ...

  4. java程序设计与实践教程 王薇 doc_Java程序设计与实践教程 王薇主编 答案

    Java程序设计与实践教程 王薇 主编 董迎红 副主编 课后习题 答案 第1章 JAVA简介 一.判断题 1.√ 2.√ 3. 4. 5. 6.√ 7.√ 8.√ 9. 10. 二.填空题 1.App ...

  5. Java SE 008 理解面向对象程序设计 (Inside Object Oriented Programming)

    Java SE 008 理解面向对象程序设计 (Inside Object Oriented Programming) 前言:此笔记为圣思园张龙老师讲述的java视频课程笔记,自己看视频学习时记录的, ...

  6. Java SE基础(更新中)

    Java的运行机制 Java SE基础(更新中) 基本语法 大小写敏感:Java 是大小写敏感的,这就意味着标识符 Hello 与 hello 是不同的. 类名:对于所有的类来说,类名的首字母应该大写 ...

  7. 20155328 《Java程序设计》 实验二(Java面向对象程序设计) 实验报告

    20155328 <Java程序设计> 实验二(Java面向对象程序设计) 实验报告 单元测试 一.单元测试和TDD 编程时需理清思路,将编程需求等想好,再开始编.此部分可用伪代码实现. ...

  8. 零基础学JAVA]Java SE基础部分-01. Java发展及JDK配置

    1.课程名称:Java发展及JDK配置 本季介绍了JAVA的发展过程,包括JDK的发展历程,path路径的配置和classpath的配置及作用.并简单讲解了一个简单的JAVA程序,并通过此程序讲解了J ...

  9. Java SE 6 新特性 Instrumentation 新功能

    系列内容: 此内容是该系列的一部分:Java SE 6 新特性 Instrumentation 简介 利用 Java 代码,即 java.lang.instrument 做动态 Instrumenta ...

最新文章

  1. linux文本分析利器awk
  2. javascript 值传递与作用域
  3. Android中的相对布局
  4. 若依前后端分离版(vue)中配置页面跳转的路由
  5. zabbix2.4域用户配置
  6. ansys用什么cpu_ANSYS图形工作站与集群配置探讨201904-1
  7. web自动化如何在不同浏览器运行_自动化决策环节的“心脏”将如何与众不同?...
  8. LeetCode Weekly Contest 142
  9. 雷军凌晨2点下班、刘强东睡4小时,这碗鸡汤程序员你必须干了
  10. Python入门--字符串的切片操作
  11. 项目案例:新闻发布系统---主题管理及页面新闻显示
  12. HBase 写优化之 BulkLoad 实现数据快速入库
  13. 如何用python编写操作系统_操作系统介绍、python基础
  14. CentOS7 下MariaDB安装与简单配置
  15. chrome浏览器清理缓存也没有用,每次必须重启怎么办?
  16. ffmpeg开发打印音视频meta信息
  17. C4D R25 UV的展开与导出
  18. excel拆分工资条
  19. additional-methods.js 用法
  20. 读梁飞-RPC框架几行代码就够了 有感

热门文章

  1. Day001--Scala中的下载安装配置及下载安装集成开发环境IDEA
  2. 产品包装设计在品牌和营销中的重要性
  3. app抓包工具_抓包助手app下载安装_抓包助手软件最新版免费下载
  4. CAD文件转PDF格式后有白底怎么办?
  5. 详述 Spring MVC 启动流程及相关源码分析
  6. Gamma校正与线性空间
  7. python简单爬取安居客的新房和二手房信息
  8. 【研报笔记】光大技术择时系列1:基于阻力支撑相对强度(RSRS)的市场择时
  9. 国内各大短视频平台去水印接口,新年限时免费使用。
  10. 一步一步SEO 之 网站内容SEO