Java 员工主管层级审批的结构

Java 员工主管层级审批的结构,java,Java,我想为采购订单审批的员工和主管层次结构创建一个类。这里我创建了三个类1人类2员工类3主管类 人员类由人员名称组成,该人员将分别在其员工和主管类中被指定为员工或主管。当主管上面还有一名主管时,问题就出现了,因为我无法再次将主管创建为员工。您能告诉我如何创建批准结构,以便即使主管有一名上级主管,他也能够批准采购订单 谢谢和问候, Yogesh设计课程的最佳方法是使用is测试 employee是一个人,因此employee类应该扩展human类 主管是雇员,因此主管类应该扩展雇员类 关于有一个主管和一

我想为采购订单审批的员工和主管层次结构创建一个类。这里我创建了三个类1人类2员工类3主管类 人员类由人员名称组成,该人员将分别在其员工和主管类中被指定为员工或主管。当主管上面还有一名主管时,问题就出现了,因为我无法再次将主管创建为员工。您能告诉我如何创建批准结构,以便即使主管有一名上级主管,他也能够批准采购订单

谢谢和问候,
Yogesh

设计课程的最佳方法是使用is测试

employee是一个人,因此employee类应该扩展human类

主管是雇员,因此主管类应该扩展雇员类

关于有一个主管和一个主管,主管应该是employee类中的一个字段,这样每个员工和记住一个主管就是一个员工,每个员工都有一个主管

现在,在employee类中,您可以有一个processPurchase方法与他的主管进行检查,然后在supervisor类中,您可以重写此方法,这样就不需要与他的主管进行检查

如果主管需要与他的主管核实,班级结构将保持不变,但方法会略有不同。在员工的processPurchase方法中,他只需让他的主管处理即可。但是,在主管的流程中,他需要检查是否有主管,然后采取相应的行动,因此在半伪代码中:

public class Supervisor extends Employee {

    //constructor
    public Supervisor(){};

    public processOrder(){
        if(this.getSupervisor() == null){
            //Don't have a supervisor, send out the order
        } else {
            this.getSupervisor().processOrder();
        }
    }
}

记住Employee类需要包含supervisor字段和访问器方法,然后supervisor类将继承它们

提示:考虑接口继承,而不是类继承。Hi Ben,问题是我无法使用supervisor用户创建采购订单,我只能使用Employee用户创建采购订单。您能告诉我应该是什么结构,以便采购订单也可以从主管用户创建,并进一步移动到其主管进行审批。