Надеюсь это поможет :)

public class Contact
{
    int i;
    String name;
    public Contact(int iVal, String nameVal)
    {
        i = iVal;
        name = nameVal;
    }
}   

public class MultiMap
{
    public static void main (String args[])
    {
        java.util.HashMap m = new java.util.HashMap();
                Contact m1 = new Contact(1, "name");
        Contact m2 = new Contact(1, "name");
        m.put(m1, "first");
        m.put(m2, "second");
        System.out.println(m.get(m1));
        System.out.println(m.get(m2));
    }
}   

:

first 
second 

Как ведет себя этот метод «get»? Поскольку и m1, и M2 имеют одинаковые значения, и я не переопределил hashcode (), будет ли вызван метод equals () класса Object?

Это верно ?

Нет метода хэш-кода, поэтому у JVM нет возможности увидеть, содержат ли объекты m1 и m2 разные значенияНе существует переопределенного метода equals, поэтому вызывается equals () класса Object, и, поскольку оба объекта различаются, приведенный выше код работает нормально, без замены m1 значения m1.

Ответы на вопрос(7)

Ваш ответ на вопрос