Create Constructor Using Random List Elements?

Issue
I’m trying to make a character generator using lists of attributes that I created. How do I do this?
Goal
To be able to call upon random elements from the list in order to generate a character when a button is pressed.
What I Have
Right now, I have a constructor for the character set up in one script and several lists set up in another.
I’ll include the constructor script and two of the lists to show what I’m working with so far.

public class ListSetUp : MonoBehaviour
{

    public class Character
    {
        public string gender;
        public string age;
        public string style;
        public string personality01;
        public string personality02;
        public string role;
        public string race;
        public string accessory;

        public Character(string newGender, string newAge, string newStyle, string newPersonality01, string newPersonality02, string newRole, string newRace, string newAcessory)
        {
            gender = newGender;
            age = newAge;
            style = newStyle;
            personality02 = newPersonality02;
            personality01 = newPersonality01;
            role = newRole;
            race = newRace;
            accessory = newAcessory;
        }

        void OnMouseDown()
        {
            
        }
    }
}



using UnityEngine;
using System.Collections;
using System.Collections.Generic;

public class CharacterGenerator : MonoBehaviour {

    public List<string> genders = new List<string>();
    public List<string> ages = new List<string>();

    void Awake()
    {
        ///GenderListElements
        genders.Add("Male");
        genders.Add("Female");
        genders.Add("Ambiguous");

        ///AgeListElements
        ages.Add("Child");
        ages.Add("Teen");
        ages.Add("Adult");
        ages.Add("Elder");
        ages.Add("Ageless");

You can make CharacterGenerator class ‘static’ and not inherit from monoBehaviour so it will become

public static class CharacterGenerator{
}

What this means is there is only one characterClass object so you can call it from anywhere

Because it no longer inherits from MonoBehaviour you cant use Awake so we will declare and initialise at the same time like this

public static List<string> genders = new List<string>{"Male", "Female", "Ambi"};
public static List<string> ages = new List<string>{"Child", "Teen"};

so now the class will look like this

 public static class CharacterGenerator{
    public static List<string> genders = new List<string>{"Male", "Female", "Ambi"};
    public static List<string> ages = new List<string>{"Child", "Teen"};
 }

now to use this in your script that would want to make a new character

 Character newChar = new Character(CharacterGenerator.genders[randomNumber],
                                   CharacterGenerator.ages [randomNumber])