Важно ли переопределить Equals, если я реализую IEquatable <T>?

Я знаю важность переопределенияGetHashCode при реализации пользовательских проверок равенства - для которых я реализовалIEquality интерфейс, а также разница между общим и неуниверсальнымEquals как обсуждено здесь. Теперь есть смысл переопределитьEquals(object t)? Wouldn»т все под общим?Equals(T t)

public override int GetHashCode() //required for hashsets and dictionaries
{
    return Id;
}

public bool Equals(T other) //IEquatable here
{
    return Id == other.Id;
}

public override bool Equals(object obj) //required??
{
    return Equals(obj as T);
}

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

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