package ru.job4j.map;

import java.util.Calendar;

/**
 * Class User описывает пользователя.
 * @author Timur Kapkaev (timur.kap@yandex.ru)
 * @version $Id$
 * @since 11.07.2017
 */
public class User {
    /** Имя пользователя. */
    private String name;
    /** Дата рождения. */
    private Calendar birthday;
    /** Количество детей. */
    private int children;

    /**
     * Конструктор класса User.
     * @param name - имя пользователя
     * @param birthday - дата рождения
     * @param children - количество детей
     * */
    public User(String name, Calendar birthday, int children) {
        this.name = name;
        this.birthday = birthday;
        this.children = children;
    }

    /**
     * Конструктор класса User.
     * @param name - имя пользователя
     * @param birthday - дата рождения
     * */
    public User(String name, Calendar birthday) {
        this(name, birthday, 0);
    }

    /**
     * Возвращает имя пользователя.
     * @return имя пользователя
     * */
    public String getName() {
        return name;
    }

    /**
     * Возвращает дату рождения.
     * @return дата рождения
     * */
    public Calendar getBirthday() {
        return birthday;
    }

    /**
     * Возвращает количество детей.
     * @return количество детей
     * */
    public int getChildren() {
        return children;
    }

    /**
     * Задает  количество детей у пользователя.
     * @param children - количество детей
     * */
    public void setChildren(int children) {
        this.children = children;
    }
}

@@ -1545,11 +1545,947 @@
 n;%0A    %7D
+%0A%0A    /**%0A     * %D0%92%D1%8B%D1%87%D0%B8%D1%81%D0%BB%D1%8F%D0%B5%D1%82 %D1%85%D0%B5%D1%88-%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D1%8E %D0%B4%D0%BB%D1%8F %D0%BE%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D0%B0 %D0%BA%D0%BB%D0%B0%D1%81%D1%81%D0%B0 User.%0A     * @return %D1%85%D0%B5%D1%88-%D0%BA%D0%BE%D0%B4%0A     * */%0A%0A    @Override%0A    public int hashCode() %7B%0A        int result = name != null ? name.hashCode() : 0;%0A        result = 31 * result + (birthday != null ? birthday.hashCode() : 0);%0A        result = 31 * result + children;%0A        return result;%0A    %7D%0A%0A%0A    /**%0A     * %D0%9E%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D1%8F%D0%B5%D1%82 %D1%80%D0%B0%D0%B2%D0%B5%D0%BD%D1%81%D1%82%D0%B2%D0%BE %D0%BE%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D0%BE%D0%B2 %D0%BA%D0%BB%D0%B0%D1%81%D1%81%D0%B0 User.%0A     * @param o - %D0%BE%D0%B1%D1%8A%D0%B5%D0%BA%D1%82 %D1%81 %D0%BA%D0%BE%D1%82%D0%BE%D1%80%D1%8B%D0%BC %D0%B2%D1%8B%D0%BF%D0%BE%D0%BB%D0%BD%D1%8F%D0%B5%D1%82%D1%81%D1%8F %D1%81%D1%80%D0%B0%D0%B2%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5.%0A     * @return true, %D0%B5%D1%81%D0%BB%D0%B8 %D0%BE%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D1%8B %D1%80%D0%B0%D0%B2%D0%BD%D1%8B.%0A     * */%0A    @Override%0A    public boolean equals(Object o) %7B%0A        if (this == o) return true;%0A        if (o == null %7C%7C getClass() != o.getClass()) return false;%0A%0A        User user = (User) o;%0A%0A        if (children != user.children) return false;%0A        if (name != null ? !name.equals(user.name) : user.name != null) return false;%0A        return birthday != null ? birthday.equals(user.birthday) : user.birthday == null;%0A    %7D%0A%0A
 %0A%7D%0A

task 5. Перекрывать и equals и hashCode [#1002]