Erro Array de Objeto

Oi gente. estou começando a aprende java e javafx e resolvi começar um projetinho pra testar meus conhecimentos. Criei a classe “Terreno” e tava querendo fazer um array de objetos dessa classe dai fiz isso aki.

public Terreno[] terreno = new Terreno[10];

ate ai n deu erro nenhum apontado no netbens mas quando tentei fazer

for(int i=0; i<10;i++){
terreno[i].setX(75 + i*120);
}

deu um erro ao copilar queria saber oque q ta errado com isso se eu fiz o array de um jeito errado ou alguma outra coisa errada sla.

Pode postar a classe Terreno?

Ta ai:

package jump;

public class Terreno {
public int velx=0;
public int x,y,largura = 40,altura = 480;

public int getVelx() {
    return velx;
}

public void setVelx(int velx) {
    this.velx = velx;
}

public int getX() {
    return x;
}

public void setX(int x) {
    this.x = x;
}

public int getY() {
    return y;
}

public void setY(int y) {
    this.y = y;
}

public int getLargura() {
    return largura;
}

public void setLargura(int largura) {
    this.largura = largura;
}

public int getAltura() {
    return altura;
}

public void setAltura(int altura) {
    this.altura = altura;
}

public void atualiza(){
    this.x += this.velx;   
}

}

Perfeito, você criou um array de 10 posições, mas cada uma das posições está vazia.

Então se você tentar fazer terreno[posicao].qualquerMembro vai acontecer NullPointerException

Você precisa inicializar os elementos, você pode fazer assim:

for (int i = 0; i < 10; i++) {
    Terreno elemento = new Terreno();
    elemento.setX(75 + i * 120);
    terreno[i] = elemento;
}
1 curtida

Vou tentar aki dps mando o feedback. Vlw

Deu certo aqui. Obrigado!!