SimpleDateFormat
и DateFormat
(SimpleDateFormat
суперкласс), а также Format
(DateFormat
суперкласс) реализовано toString()
, поэтому toString()
из класса Object
действительно выполняется, код которого is:
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
Теперь генерируется hashCode SimpleDateFormat
:
public int hashCode()
{
return pattern.hashCode();
// just enough fields for a reasonable distribution
}
Это означает, что если вы создадите многочисленные экземпляры SimpleDateFormat
с тем же pattern
, например в вашем случае они будут иметь одинаковый hashCode
, и, следовательно, toString()
вернет то же самое для этих экземпляров.
Кроме того, поскольку он был замечен rixmath, экземпляры SimpleDateFormat
с тем же pattern
также будет равным.