Olá boa noite, sou iniciante no curso de sistemas de informação estou com um erro no meu código na parte alternativas [numAlternativa]=new Alternativas(alternativa, codresp);

public class Questoes {

private String questao;
private int idquestao;
protected Alternativas[] alternativas = new Alternativas[5];
private int numAlternativa=0;

public String getQuestao() {
    return questao;
}

public void setQuestao(String questao) {
    this.questao = questao;
}

public int getIdquestao() {
    return idquestao;
}

public void setIdquestao(int idquestao) {
    this.idquestao = idquestao;
}

public Alternativas[] getAlternativas() {
    return alternativas;
}

public void setAlternativas(Alternativas[] alternativas) {
    this.alternativas = alternativas;
}
public int getNumAlternativa() {
    return numAlternativa;
}

public void setNumAlternativa(int numAlternativa) {
    this.numAlternativa = numAlternativa;
}
//public questoes eu vou usar o string questoes porque está na classe questoes
public Questoes(String questao, int idquestao) throws SQLException{
    this.questao = questao;
    this.idquestao = idquestao;
    
    String SQL = "Select alternativa, codresp FROM Alternativas WHERE idquestaofk="+this.idquestao;
    ResultSet result = Jogo.getAcBD().query(SQL);
    while (result.next()) {
        String alternativa=result.getString("alternativa");
        boolean codresp=result.getBoolean("codresp");
        alternativas[numAlternativa]=new Alternativas(alternativa, codresp);
        numAlternativa++;
        
    }
}

@Override
public String toString() {
    String exibição = "";
    String opcoes="ABCDE";
    
    for (int i = 0; i < numAlternativa; i++) {
        exibição+=alternativas[i].toString(opcoes.charAt(i))+"\n";
    }
    return questao +"\n\n"+exibição;
}
//Usar para o funcionamento do botão

public boolean isCodresp(char alt){
String opcoes=“ABCDE”;
int pos=opcoes.indexOf(alt+"");
return alternativas[pos].isCodresp();
}

}

Com o cod que vc colocou acredito que o erro esta em o numAlternativaesta variavel global vc esta utilizando para funções de montar o arrayDeaAternativas …então vc sempre tah populando a mesma posição