Самое интересное место в этом простом примере это сравнение дат. Оно должно быть не через ==, а через метод equels. Все остальное просто и логично.
public class Employee {
private String name;
private Date hireDate;
private double salary;
public Employee(String name, Date hireDate, double salary) {
this.name = name;
this.hireDate = hireDate;
this.salary = salary;
}
public String getName() {
return name;
}
public Date getHireDate() {
return hireDate;
}
public double getSalary() {
return salary;
}
public void raiseSalary(double percent) {
salary *= 1 + percent / 100;
}
@Override
public String toString()
{
return getName();
}
@Override
public int hashCode()
{
return (name + hireDate.toString()).hashCode();
}
@Override
public boolean equals(Object temp)
{
Employee second = (Employee)temp;
return getName() == second.getName() && getHireDate().equals(second.getHireDate());
}
}
* This source code was highlighted with Source Code Highlighter.
Комментариев нет:
Отправить комментарий