Problemas com (java.io) entrada e saida de de dados no console

OBSERVEM AS 3 CLASSES QUE SE SEGUEM

public class Aluno {
String nome;
}

-----****---------------------------------------------------------------

public class CadastraAlunos {
Aluno[] mAlunos = new Aluno[3];

public void cadastro() throws IOException{
		InputStream is = System.in;
		InputStreamReader isr = new InputStreamReader(is);
		BufferedReader br = new BufferedReader(isr);
		mAlunos[0].nome = br.readLine();
}

}

-----****----------------------------------------------------------------

import java.io.IOException;

public class TestaAluno {
public static void main(String[] args) throws IOException{
CadastraAlunos ca = new CadastraAlunos();
ca.cadastro();
}
}

----****-----------------------------------------------------------------

QUANDO DIGITO O NOME DO ALUNO PARA QUE O MESMO
SEJA INSERIDO EM (mAlunos[0].nome) E TECLO ENTER
OCORRE UM ERRO.

MAS QUANDO AO INVÉS DE USAR UMA MATRIZ USO UMA SIMPLES
VARIAVEL DO TIPO STRING PARA REALIZAR O MESMO PROCEDIMENTO
NÃO OCORRE ERRO.

POR QUE SERÁ, ALGUÉM PODERIA ME AJUDAR? :?:[size=18][/size]

Opa.

Você inicializou o vetor mas não inicializou os elementos do vetor:

Aluno[] mAlunos = new Aluno[3]; 
for ( int i = 0; i < mAlunos.length; ++i ) {
   mAlunos[i] = new Aluno();
}

Ou senão utilize as outras maneiras de inicializar um vetor.

Falou.