实操考试题其他系列请移步专栏:JAVA实操题_疯狂的格式化的博客-CSDN博客步骤2(10分):完成基类 User
目标说明
系统中涉及到的用户有老板和员工,我们先创建基类 User,部分代码已经提供,请完成该类的设计。
org.lanqiao.bean.User 是一个基类,请根据注释要求,补全空缺的 set 和 get 方法的代码。
//getName方法
public String getName() {
return name;
}
把 User 中的代码复制到 Eclipse 中,直接使用 Eclipse 自动生成 set 和 get 方法。
右键——>Source——>Generate Getters and Setters
public int getType() {
return type;
}
public void setType(int type) {
this.type = type;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
步骤3(10分):完成实体类 Boss
目标说明
我们使用 Boss 类来代表老板,请你完成该实体类的设计。
org.lanqiao.bean.Boss 是一个实体类,表示的是老板,请根据注释要求,补全缺失的构造方法。
public class Boss extends User {
public Boss(String name,String pwd){
}
}
根据提示使用super关键字直接调用父类的构造方法实现
public Boss(String name,String pwd){
super(1, name, pwd);
}
步骤4(10分):完成实体类 Employee
目标说明
我们使用 Employee 类来代表员工,请你完成该实体类的设计。
org.lanqiao.bean.Employee 是一个实体类,表示的是员工,请根据注释要求,补全缺失的构造方法。
public Employee(String name, String pwd, String sex, double salary, String department) {
}
根据提示使用super调用父类的构造方法先设置type、name及pwd的属性值
public Employee(String name, String pwd, String sex, double salary, String department) {
super(2, name, pwd);
this.sex=sex;
this.salary=salary;
this.department=department;
}
步骤5(10分):完成配置类 Config
目标说明
系统中存在很多的提示信息,以及需要用到一些全局的操作,我们把他们封装在 Config 类中,有一部分功能没有实现,请你实现它。
org.lanqiao.config.Config 是一个配置类,定义了很多的系统配置,请根据注释要求,补全空缺的代码。
public static boolean goon(){
return false;
}
根据注释的信息使用 if 语句完成本题
public static boolean goon(){
if(input.next().equals("y")){
return true;
}
return false;
}
步骤6(10分):完成服务类 BossService
目标说明
我们把老板的部分业务封装在 BossService 类中,请你完成其中的缺失功能。
org.lanqiao.db.BossService 是一个服务类,请根据注释要求,完成 find 方法。
public class BossService {
public Boss find(String name, String pwd) {
//遍历所有的Boss对象,遍历出来的每个Boss对象为如下代码中的boss
for(Boss boss:Db.bosses){
//补充完成代码:根据name和pwd判断用户是否存在,如果存在则返回该用户
}
return null;
}
}
调用 get 方法获取 boss 的 name 和 pwd,使用 equals 方法判定字符串是否相等,不要使用 == 符号
public Boss find(String name, String pwd) {
//遍历所有的Boss对象,遍历出来的每个Boss对象为如下代码中的boss
for(Boss boss:Db.bosses){
//补充完成代码:根据name和pwd判断用户是否存在,如果存在则返回该用户
if(name.equals(boss.getName())&&pwd.equals(boss.getPwd())){
return boss;
}
}
return null;
}
步骤7(10分):完成服务类 LoginService
目标说明
系统中的登录服务我们封装在了 LoginService 类中,请帮忙完成。
org.lanqiao.service.LoginService 是登录服务类,请根据注释要求,完成注销登录方法。
public static void logOut(){
}
这道题很简单,直接复制 LoginService 类的前两行代码即可
public static void logOut(){
logined = false;
loginUser = null;
}
步骤8(15分):完成菜单类 BossMenu
目标说明
当服务、配置及实体类设计完成后,我们需要提供相关的菜单操作,例如 BossMenu 类中为老板提供了相关菜单操作,请你帮忙完成没有实现的功能。
org.lanqiao.menu.BossMenu 是老板菜单类,请根据注释要求,完成 select 方法。
public static String select() {
System.out.println("请输入员工姓名:");
//补充完成代码,接收用户的输入。
String name="####";
//遍历所有的Employee
for(int i=0;i
根据注释的提示,补全代码
public static String select() {
System.out.println("请输入员工姓名:");
//补充完成代码,接收用户的输入。
String name=Config.input.next();
//遍历所有的Employee
for(int i=0;i
步骤9(20分):完成菜单类 EmployeeMenu
目标说明
BossMenu 类中为老板提供了相关菜单操作,EmployeeMenu 为员工提供了相关菜单操作,请你帮忙完成没有实现的功能。
org.lanqiao.menu.EmployeeMenu 是员工菜单类,请根据注释要求,完成 changePwd 方法,该方法的作用是:修改当前登录的用户的密码。
public static void changePwd() {
//输入原密码
System.out.print(Config.SCHANGE1);
//接受用户输入的原始密码
String oldpwd = "###";
//验证是否进行密码修改,请补充完成代码
}
根据提示获取当前登录的用户,然后调用 get 和 set 方法获取和设置密码
public static void changePwd() {
//输入原密码
System.out.print(Config.SCHANGE1);
//接受用户输入的原始密码
String oldpwd = Config.input.next();
//验证是否进行密码修改,请补充完成代码
if(LoginService.loginUser.getPwd().equals(oldpwd)){
LoginService.loginUser.setPwd(Config.input.next());
}
} 


