Viene fornito il seguente codice:
class Warren
{
private const int MaxRabbitsInWarren = 99;
private Rabbit[] Rabbits;
private int RabbitCount = 0;
private int PeriodsRun = 0;
private bool AlreadySpread = false;
private int Variability;
private static Random Rnd = new Random();
public Warren(int Variability)
{
this.Variability = Variability;
Rabbits = new Rabbit[MaxRabbitsInWarren];
RabbitCount = (int)(CalculateRandomValue((int)(MaxRabbitsInWarren / 4), this.Variability));
for (int r = 0; r < RabbitCount; r++)
{
Rabbits[r] = new Rabbit(Variability);
}
}
}
- C'è un array chiamato Rabbits, di tipo Rabbit, che è un campo di classe Warren.
- Il costruttore di Warren crea un numero casuale di "Conigli" inserito nell'array Rabbits.
Poiché l'array Rabbits è un membro della classe Warren, questo significa che il suo ciclo di vita è strettamente legato alla classe Warren? (cioè distruggendo un labirinto, distrugge l'array di conigli?)