在构造函数中设置值 - 来自另一个类

时间:2018-03-16 09:51:28

标签: java constructor initialization setter

我有两个班级(日期和员工)。

类日期没有构造函数,但它有3个带有setter的变量。

类Employee有一个构造函数,我初始化了它的变量。但我必须将Class Date中的3个变量附加到它。

我尝试使用Setter方法,但是当我运行代码时,它表示出现以下错误:

hire_date.setDay(1);
hire_date.setMonth(1); 
hire_date.setYear(2018);  

//在班级Empolyee

 private String name;
 private Date hire_date;
 private double monthly_salary; 

    public Employee() {
        name = "Jody";
        hire_date.setDay(1);
        hire_date.setMonth(1); 
        hire_date.setYear(2018);         
        monthly_salary = 2000.0;
    }

//在课程日期

 private int day;   
 private int month;
 private int year;

    public void setDay(int day) {
        this.day = day;
    }

    public void setMonth(int month) {
        this.month = month;
    }

    public void setYear(int year) {
        this.year = year;
    }

3 个答案:

答案 0 :(得分:1)

缺少新的Date()。调用setter

时,Date对象不存在

答案 1 :(得分:1)

您尚未创建Date对象。那么,您应该如何设置其属性?

Date hire_date = new Date();

答案 2 :(得分:1)

我运行这个程序。 这里的错误是空指针异常

原因是hire_date未初始化。你需要添加: hire_date = new Date();

首次使用hire_date之前