日期:2014-05-20  浏览次数:20588 次

核心技术出错了
Java code
import java.util.*;
public class EmployeeTest {

    /**
     * @param args
     */
    public static void main(String[] args) {
        Employee[] staff = new Employee[3];
        
        staff[0] = new Employee("K",75000,1987,12,15);
        staff[1] = new Employee("L",50000,1989,10,1);
        staff[2] = new Employee("P",40000,1990,3,15);
        
        for(Employee e:staff)
            e.raiseSalary(5);
        
        for(Employee e:staff)
            System.out.println("name=" + e.getName() + ",salary=" + e.getSalary() + ",hireDay=" + e.getHireDay());
        // TODO Auto-generated method stub

    }

}

class Employee{
    public Employee(String n,double s, int year, int month,int day){
        name = n;
        salary = s;
        
        GregorianCalendar calendar = new GregorianCalendar(year,month-1,day);    
        hireDay = Calendar.getTime();
    }
    
    public String getName(){
        return name;
    }
    
    public double getSalary()
    {
        return salary;
    }
    public Date getHireDay(){
        return hireDay;
    }
    public void raiseSalary(double byPercent){
        double raise = salary * byPercent/100;
        salary += raise;
        
    }
    
    private String name;
    private double salary;
    private Date hireDay;
    
}

java核心技术上的一段代码,编译起来竟然报错,还请大虾们指点
 无法从静态上下文中引用非静态 方法 getTime()
  hireDay = Calendar.getTime()

------解决方案--------------------
hireDay = calendar.getTime();
calendar应该是小写的
------解决方案--------------------
Java code
hireDay = calendar.getTime();