Делает ли Retrofit сетевые вызовы в основном потоке?

Я согласен с комментарием I82. То, что вам следует избегать ссылки B на родителя: это дублирование информации, которое обычно приводит только к неприятностям, но вам может понадобиться сделать это в вашем случае.

если вы оставите родительскую ссылку в B, в отношении хэш-кодов вы должны полностью игнорировать родительскую ссылку и использовать внутренние переменные true B для построения хеш-кода.

A s - это только контейнеры, и их значение полностью определяется их содержимым, которое является значениями содержащихся B s, и поэтому должны иметь свои хэш-ключи.

Если A является неупорядоченным множеством, вы должны быть очень осторожны, чтобы хэш-код, который вы строили из значений B (или [х7 хэш-коды]), не зависит от какого-либо заказа. Например, если хэш-код создается путем добавления и умножения хеш-кодов содержащихся B в некоторой последовательности, вы должны сначала заказать хеш-коды, увеличив порядок перед вычислением результата сумм / умножений. Аналогично, A.equals(o) не должен зависеть от порядка B s (если неупорядоченный набор).

Обратите внимание, что если вы используете java.util.Collection внутри A, просто установите B s, игнорируя родительскую ссылку, автоматически выдаст действительные хеш-коды A, поскольку по умолчанию Collection имеют хорошие хеш-коды (упорядочение или нет).

31
задан Jaguar 8 January 2014 в 21:22
поделиться