Ответ 1
Да.
javadoc объясняет:
Экземпляр этого класса используется для генерации потока псевдослучайных чисел. Класс использует 48-битное семя, которое модифицируется с использованием линейной конгруэнтной формулы. (См. Дональд Кнут, "Искусство программирования", том 2, раздел 3.2.1.)
Если два экземпляра
Random
создаются с тем же самым семенем, и для каждой из них производится одна и та же последовательность вызовов методов, они будут генерировать и возвращать идентичные последовательности чисел.. Чтобы гарантировать это свойство, определенные алгоритмы заданы для классаRandom
. Реализации Java должны использовать все алгоритмы, показанные здесь дляclass Random
, для абсолютной мобильности Java-кода. Однако подклассамclass Random
разрешено использовать другие алгоритмы, если они соответствуют общим контрактам для всех методов.