Практика на класс Object в Java
Сделайте класс Employee с полями name
и salary. Переопределите toString,
чтобы в консоли выводились имя и зарплата через пробел.
Создайте объект и выведите его через println.
Дан код:
class Employee {
public String name;
public Employee(String name) {
this.name = name;
}
}
Создайте два разных объекта Employee с именем
Ann. Выведите результат first.equals(second)
без переопределения equals.
Добавьте в Employee поле id типа int.
Переопределите equals и hashCode так,
чтобы равными считались сотрудники с одним id.
Проверьте equals для двух объектов с
id = 1.
Дан код:
import java.util.HashSet;
import java.util.Objects;
class Employee {
public int id;
public String name;
public Employee(int id, String name) {
this.id = id;
this.name = name;
}
@Override
public boolean equals(Object obj) {
if (!(obj instanceof Employee other)) {
return false;
}
return id == other.id;
}
@Override
public int hashCode() {
return Objects.hash(id);
}
}
Создайте HashSet<Employee>, добавьте два
объекта с id = 5 и разными именами. Выведите
set.size().
Создайте объект Employee и вторую переменную,
которой присвойте тот же объект. Сравните через
== и через equals, выведите оба
результата.
Переопределите toString у Employee
в формате #id name (решётка, идентификатор,
пробел, имя). Выведите объект с id = 3
и именем Bob.