Реальный преимущества / недостатки зависят от реального кода. Другими словами, это зависит от того, как часто создается B
по сравнению с тем, как часто вызывается метод и т. Д. Вам следует профилировать приложение и посмотреть, имеет ли оно разумное значение.
Будет ли А более производительным, чем Б? Конечно. Но то, заметите ли вы когда-нибудь, зависит от вашего использования. Будет ли A использовать меньше памяти, чем B? Конечно, но все равно, заботишься ты о себе или нет, зависит от того, сколько экземпляров A / B ты держишь рядом.
Действительно, единственным другим соображением является детерминизм. Поскольку вы не указываете начальное число для экземпляра Random, я так понимаю, вам все равно, сможете ли вы воспроизвести последовательность чисел из Random. Но стоит отметить ... если у вас есть общий случайный случай, будет намного сложнее гарантировать определенную детерминированную последовательность чисел для некоторого экземпляра A, чем для одного для экземпляра, как в B.