Array usando objetos

5 respostas
W

Boas!

Estou fazendo esse post porque estou com uma duvida na criação de array usando objetos.

package javaapplication13;

import java.util.Scanner;

public class Notas
{

    public void registrarNotas()
    {

    Professor prof = new Professor(); //usarei depois
    Scanner info = new Scanner(System.in); //usarei depois
    Aluno aluno[] = new Aluno[5];

        for(int x = 0; x < aluno.length; x++)
        {
        aluno[x].nome = "Testando...";
        System.out.println(aluno[x]);
        }
    }
}

Quando executo da um erro:

Exception in thread "main" java.lang.NullPointerException
at javaapplication13.Notas.registrarNotas(Notas.java:17)
at javaapplication13.Main.main(Main.java:9)
Java Result: 1

Não consigo encontrar solução =/

5 Respostas

malokas

primeiro vc tem que da um new para instanciar as posicoes do array. Ex: aluno[1] = new Aluno(); Vc pode usar um for para fazer isso.

W

Valeu, rodou. Mas agora a saída deu isso aqui

javaapplication13.Aluno@173a10f
javaapplication13.Aluno@530daa
javaapplication13.Aluno@a62fc3
javaapplication13.Aluno@89ae9e
javaapplication13.Aluno@1270b73

Estranho, pq isso?

T

Tente usar o método que mostre o nome do aluno como por exemplo

System.out.println(aluno[x].getNome);

ou na classe Aluno implemente o método ToString();

public class Aluno{
...

public String toString(){
   return this.getNome();
}

Editado…

No seu caso tente

System.out.println(aluno[x].nome);
W

[quote=Two_]Tente usar o método que mostre o nome do aluno como por exemplo

System.out.println(aluno[x].getNome);

ou na classe Aluno implemente o método ToString();

public class Aluno{
...

public String toString(){
   return this.getNome();
}

Editado…

No seu caso tente

System.out.println(aluno[x].nome);

Nossa cara… que erro idiota o meu

vlw pela ajuda, to começando no java, preciso prestar atençao nesses detalhes =S

T

WhoTookIskifi

Isso é normal…
Quando comecei programar em Java tinha esses erros também…
Mais é até bom, errando que se aprendi

Criado 19 de fevereiro de 2011
Ultima resposta 20 de fev. de 2011
Respostas 5
Participantes 3