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

实践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;

}

}

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/427739.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

个人空间风格模版php,home.php这个页面风格模板在哪里修改?答案:space_home.html...

/template/default/home 空间模块模板目录editor_image_menu.htmfollow_feed.htm 广播首页follow_feed_li.htm 广播数据列表follow_user_header.htm 广播用户数据统计invite.htm 邀请模板magic_call.htm 道具-点名卡magic_detector.htm 道具-探测器magic_doodle.htm 道…

18.QT-QPlainEdit 信号与槽

QPlainEdit编辑功能 Public Slots void appendHtml ( const QString & html ) void appendPlainText ( const QString & text ) void centerCursor () void clear () void copy () void cut () void insertPlainText ( const QString & text ) void paste () void …

VS生成Cordova for Android应用之Gradle

VS生成Cordova for Android应用之Gradle 原文:VS生成Cordova for Android应用之Gradle一、Gradle简介 Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置。 …

进一法整数php,进一法取整、四舍五入取整、忽略小数等的取整数方法大全

PHP取整数函数常用的四种方法,下面收集了四个函数;经常用到取整的函数,今天小小的总结一下!其实很简单,就是几个函数而已~~主要是:ceil,floor,round,intvalPH…

pjax转发

pjax几大特点: 1、异步(ajax) 2、地址栏改变路径 3、实现前进和后退back和forword 如何解决:地址变了之后,万一F5刷新的问题,主要是通过后台判断是否为pjax请求,是的话做个标志,在前…

php全局cors,PHP开启CORS - slagga的个人页面 - OSCHINA - 中文开源技术交流社区

php后台响应头部代码//json头header("Content-type: application/json");//跨域header("Access-Control-Allow-Credentials: true");header("Access-Control-Allow-Origin: 跨域URL");//CORSheader("Access-Control-Request-Methods:GET, P…

嘻嘻

今天我们来聊一下如何减肥? 其实我也不知道,嘻嘻~ 开个玩笑 好了,今天我们继续来学习新的知识。 在前两篇文章中,我们接触到了索引的概念,今天我们要对索引进行一个拓展。首先我们先来看一下下面这段代码: …

mysql :完整性约束

---恢复内容开始--- 一:介绍 约束条件与数据类型的宽度一样 ,都是可选参数 作用,用于保证数据的完整性和 一致性 主要分为: primary key (pk) 标识该字段为该表的主键, 可以唯一的标识记录 foreign key (fk…

php htts cookies,Http和Https下的cookie的写入问题

session和cookie是不一样的session存储在服务器,cookie存储在客户端设置cookie:function setcookie ($name, $value null, $expire null, $path null, $domain null, $secure null, $httponly null) {}获取cookie:$_COOKIE[$sCookieName];题主的写法只是操作了服务器端的…

断言NSAssert的使用

NSAssert()的定义是 #define NSAssert(condition, desc) condition是条件表达式,值为yes或者no,在OC中规定0为假,非0就为真。 desc为异常描述,为NSString类型。 当condition为yes时程序继续运行; 当condition为no时程序…

五维图matlab,五维立体图,怎么画五维图(即以五边形反映各项水平)

一维、二维、三维、四维、五维分别是什么?线是一维的,参数是点 面是二维的,参数是线 体是三维的,参数是面 以此类推,以体为参数构成的空间就是四维空间,通常理解为时间,从很多科幻小说中可以看到…

java 做项目踩坑,web项目踩坑过程

sql函数设计:一开始本来是直接用Java的jdbc直接传输操作语句的。但后来学了存储过程发现存储过程可以提高不少的效率。就重构了自己对数据库的操作代码。包括:开启,查找,修改,关闭。开启:直接使用的构造函数…

python中主函数循环,带有菜单函数的Python主函数循环不起作用?

我现在是一名大学生,正在上python课程。我们的任务是用函数创建这个程序。main函数调用菜单,然后在main函数中编写一个循环,根据菜单函数中的用户响应访问其他函数。在我好像不能让我的循环工作。当我选择一个菜单选项时,什么都不…

在nocdb转pdb的时候遇到小bug

在nocdb转为pdb之后,发现有一个应用账号。从pdb使用expdp导出。导入其他nocdb。报错ORA-01917: user or role HUE does not exist[oraclelxtrac06 ~]$ more 1HUE.log ;;; Import: Release 12.2.0.1.0 - Production on Wed May 9 23:20:59 2018Copyright (c) 1982, 2…

matlab设计理想数字带通滤波器,基于matlab的数字带通滤波器课程设计报告

基于matlab的数字带通滤波器课程设计报告 1 西安文理学院机械电子工程系 课程设计报告 专业班级 08级电子信息工程1班 题 目 基于 MATLAB 的数字带通滤波器 学 号 学生姓名 指导教师 2011 年 12 月 西安文理学院机械电子工程系2 课程设计任务书 学生姓名 _______专业班级 _____…

php上传文件损坏,PHP 上传文件故障排除

PHP 文件上传时出现问题时,就要在表单、后台处理程序和服务器配置上找原因。最常见的故障原因有:PHP 配置不正确、服务器上的相关目录没有写权限、表单编写有问题等。如果在使用 PHP 上传时遇到问题,请参阅以下故障排除步骤:检查表…

xml序列号错误

xml序列号错误((XmlHelper.Deserialize))提示&#xff1a;XML 文档(1, 2)中有错误。{"不应有 <entryOrder xmlns>。"} 原因&#xff1a;1.缺少根目录&#xff08;<root>&#xff09;2.xml字段转换失败&#xff08;string->int&#xff09; ----------…

oracle 强制 断开,ORA-01092: ORACLE 例程终止。强行断开连接

dataguard服务器不能open&#xff0c;需要重启主服务器才能解决。如下&#xff1a;SQL> conn as sysdba;已连接到空闲例程。SQL> startup nomount;ORACLE 例程已经启动。Total System Global Area 1240186076 bytesFixed Size 453852 bytesVariable Si…

Mac远程连接服务器

方法一&#xff1a;ssh 方法二&#xff1a;commandK进入远程桌面&#xff0c;这种方式类似于windwos下的远程桌面 转载于:https://www.cnblogs.com/xiyuan2016/p/9020978.html

oracle v sql不存在,程序包oracle.sql不存在

今天项目在maven install 的时候报“程序包oracle.sql不存在&#xff0c;类TIMESTAMP找不到”的问题&#xff1a;plugins:maven-compiler-plugin:3.1:compile (default-compile) on project gdairport: Compilation failure: Compilation failure:...TimestameUtil.java:[7,18]…