La classe Random di Java utilizza un valore iniziale di seme e un < a href="http://en.wikipedia.org/wiki/Linear_congruential_generator"> generatore congruenziale lineare come parte del suo stato interno per generare una sequenza di numeri casuali. Se i metodi nextInt()
e nextDouble()
fossero statici, non avrebbero accesso a questa memoria interna.
Dai documenti:
If two instances of Random are created with the same seed, and the same sequence of method calls is made for each, they will generate and return identical sequences of numbers.
Nota che questo significa anche che se due istanze di Random vengono create con semi diversi , genereranno due sequenze diverse.