# Class DefaultSeedGenerator

java.lang.Object
org.uncommons.maths.random.DefaultSeedGenerator

All Implemented Interfaces:
  `SeedGenerator`

public final class DefaultSeedGenerator extends Object implements SeedGenerator
Seed generator that maintains multiple strategies for seed generation and will delegate to the best one available for the current operating environment.

## Method Summary

Modifier and Type
Method
Description
`byte[]`
`generateSeed(int length)`
Generates a seed by trying each of the available strategies in turn until one succeeds.
`static DefaultSeedGenerator`
`getInstance()`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Method Details

### getInstance

public static DefaultSeedGenerator getInstance()

Returns:
  The singleton instance of this class.

### generateSeed

public byte[] generateSeed(int length)
Generates a seed by trying each of the available strategies in turn until one succeeds. Tries the most suitable strategy first and eventually degrades to the least suitable (but guaranteed to work) strategy.

Specified by:
  `generateSeed` in interface `SeedGenerator`
Parameters:
  `length` - The length (in bytes) of the seed.
Returns:
  A random seed of the requested length.