您的位置: 网站首页 > 程序开发 > Java程序设计 > 第3章 对象和类 > 【3.5 上 机 实 验】

3.5 上 机 实 验

 

3.5 

创建一个Employee类,用来存储雇员的ID、姓名和工资。其中IDint类型来存储,并可自动顺序编号,例如上一个雇员的ID10,则下一个雇员的ID11。并编写一个测试程序,输入数据:

张三,40000

李四,60000

王五,65000

输出存储的结果,并给出下一个有效编号,形式如下:

姓名=张三,编号=1,工资=40000.0

姓名=李四,编号=2,工资=60000.0

姓名=王五,编号=3,工资=65000.0

下一个有效编号=4

可考虑用静态变量存储员工编号,完整的程序代码如下:

/** TestEmployee.java @author ZDS

 * 2007-2-18 下午12:18:15 */

package chap03;

/** 输入并打印所有员工的信息*/

public class TestEmployee {

      public static void main(String[] args) {

        Employee[] staff = new Employee[3];// 输入3个员工的信息到职工数组

        staff[0] = new Employee("张三", 40000);

        staff[1] = new Employee("李四", 60000);

        staff[2] = new Employee("王五", 65000);

        for (int i = 0; i < staff.length; i++)// 打印输出所有员工的信息

        {

            Employee e = staff[i];

            e.setId();

            System.out.println("姓名=" + e.getName() + ",编号=" + e.getId()

                    + ",工资=" + e.getSalary());

        }

        int n = Employee.getNextId();// 调用静态方法                   

        System.out.println("下一个有效编号=" + n);

      }

}

/** 存储雇员的ID、姓名和工资,并保存下一个ID*/

class Employee {

      private String name;

      private double salary;

      private int id;

      private static int nextId = 1;

          public Employee(String n, double s) {

        name = n;

        salary = s;

        id = 0;

    }

      public String getName() {

        return name;

      }

      public double getSalary() {

          return salary;

      }

      public int getId() {

          return id;

      }

      public void setId() {

          id = nextId;// 设置职工编号到下一个有效编号                        

          nextId++;

      }

      public static int getNextId() {

          return nextId;//返回静态存储空间                      

      }

      public static void main(String[] args) // 单元测试

      {

          Employee e = new Employee("张三", 50000);

          System.out.println(e.getName() + " " + e.getSalary());

      }

}