public static List <Person> GeneratePersons(int countOfPersons) { Random rnd = new Random(); List <Person> persons = new List <Person>(); for (int i = 0; i < countOfPersons; i++) { switch (rnd.Next(0, 3)) { case 0: Enrollee enrollee = new Enrollee(); enrollee.FillPropertiesRandomly(); persons.Add(enrollee); break; case 1: Student student = new Student(); student.FillPropertiesRandomly(); persons.Add(student); break; case 2: Professor professor = new Professor(); professor.FillPropertiesRandomly(); persons.Add(professor); break; } Thread.Sleep(30); } return(persons); }