【发布时间】:2014-02-18 01:09:24
【问题描述】:
我正在尝试在 Java 中实现一个构造函数,但我不知道我是否做错了什么,但我不断收到垃圾输出。
这是我要赋值的变量:
private static Employee employee;
这就是我尝试分配它的方式:
employee = new Employee(empType, empFName, empLName, empBDate, empGender, empHireDate, empReleaseDate, empBaseSalary);
这里是类和构造函数:
public class Employee {
private String Type;
private String FName;
private String LName;
private Date BDate;
private String Gender;
private Date HireDate;
private Date ReleaseDate;
private double BaseSalary;
public Employee(String type, String fname, String lname, String bdate, String gender, String hire, String release, double salary){
this.Type = type;
this.FName = fname.toUpperCase();
this.LName = lname.toUpperCase();
this.BDate = new Date(bdate);
this.Gender = gender;
this.HireDate = new Date(hire);
if (release == "null"){
this.ReleaseDate = null;
}
else if(release != "null"){
this.ReleaseDate = new Date(release);
}
this.BaseSalary = salary;
}
}
当我尝试打印时,只是为了测试它,这就是我的打印方式:
System.out.println(employee);
这是我每次得到的:
Employee@4c264dd8
谁能告诉我我做错了什么?
【问题讨论】:
-
如果你想以这种方式打印你的对象,你必须重写
toString()方法。你看到的是toString的默认输出,一个对象的类型和hashcode。 -
那不是垃圾,那是对象的身份哈希码
-
Here's 谷歌搜索你。
标签: java