编译的时候总是在getHireDay函数出出错,求教import java.util.GregorianCalendar;
import java.util.Date;
/**
*
* @author Administrator
*/
public class _Employee {
/** Creates a new instance of _Employee */
public _Employee(String name, double salary, int year, int month, int day)
{
_name=name;
_salary=salary;
Date _hireDay=(new GregorianCalendar(year,month-1,day)).getTime();
}
//propertises
public String getName(){return _name;}
public double getSalary(){return _salary;}
public void getHireDay()
{
System.out.println(_hireDay.toString());
}
//fields
private String _name;
private double _salary;
private Date _hireDay;
}
import java.util.Date;
/**
*
* @author Administrator
*/
public class _Employee {
/** Creates a new instance of _Employee */
public _Employee(String name, double salary, int year, int month, int day)
{
_name=name;
_salary=salary;
Date _hireDay=(new GregorianCalendar(year,month-1,day)).getTime();
}
//propertises
public String getName(){return _name;}
public double getSalary(){return _salary;}
public void getHireDay()
{
System.out.println(_hireDay.toString());
}
//fields
private String _name;
private double _salary;
private Date _hireDay;
}
在你的构造函数中:
Date _hireDay=(new GregorianCalendar(year,month-1,day)).getTime();
这句应该去掉 Date 吧?
因为你在构造方法里又定义了一个局部的_hireDate变量,因此,它覆盖了类实例变量_hireDate,也就是说,在构造方法中并没有初始化类实例变量_hireDate,所以当你调用getHireDate时,会抛出空指针异常。