⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 employee.java

📁 源码为科学出版社出版的英文<java设计模式>(影印版)所用的所有例子程序
💻 JAVA
字号:
import java.util.*;

public class Employee {
    private String name;
    private long salary;
    private Vector subordinates;
    private Employee parent = null;
//--------------------------------------
    public Employee(String _name, long _salary) {
        name = _name;
        salary = _salary;
        subordinates = new Vector();
    }
    //--------------------------------------
    public Employee(Employee _parent, String _name, long _salary) {
        name = _name;
        salary = _salary;
        parent = _parent;
        subordinates = new Vector();
    }
    //--------------------------------------
    public long getSalary() {
        return salary;
    }
    //--------------------------------------
    public String getName() {
        return name;
    }
    //--------------------------------------
    public void add(Employee e) {
        subordinates.addElement(e);   
    }
    //--------------------------------------
    public void remove(Employee e) {
        subordinates.removeElement(e);
    }
    //--------------------------------------
    public Enumeration elements() {
        return subordinates.elements();
    }
    //--------------------------------------
    public Employee getChild(String s) {
        Employee newEmp = null;

        if (getName().equals(s))
            return this;
        else {
            boolean found = false;
            Enumeration e = elements();
            while (e.hasMoreElements() && (! found)) {
                newEmp = (Employee)e.nextElement();
                found = newEmp.getName().equals(s);
                if (! found) {
                    newEmp = newEmp.getChild(s);
                    found =(newEmp != null);
                }
            }
            if (found)
                return newEmp;
            else
                return null;
        }
    }

    //--------------------------------------
    public float getSalaries() {
        float sum = salary;
        for (int i = 0; i < subordinates.size(); i++) {
            sum += ((Employee)subordinates.elementAt(i)).getSalaries();
        }
        return sum;
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -