Java - Ayuda con error NullPointerException

   
Vista:

Ayuda con error NullPointerException

Publicado por Rob (1 intervención) el 25/06/2010 12:50:04
Hola, estoy aprendiendo a trabjar con arreglos de objetos en java y encontre un pdf donde plantean un ejercicio ( http://web.ing.puc.cl/~jperez/ing1310/oo_3.pdf ), estoy intentando realizar el metodo public boolean TieneCurso(Curso c), me compila pero a la hora de la ejecucion me tira el siguiente error Eclipse.

Ingrese nombre alumno:
xd
1 TieneCurso
2 AsignaCurso
3 CantidadTotalCreditos
4 ImprimeListaCursos
5 EliminaCurso
Ingrese opcion: 1
Ingrese Sigla:
mat101
Ingrese Creditos:
12
Exception in thread "main" java.lang.NullPointerException
at Alumno.TieneCurso(Alumno.java:88)
at Alumno.menu(Alumno.java:69)
at Alumno.<init>(Alumno.java:22)
at Alumno.main(Alumno.java:112)

Algo entiendo a que se refiere el error pero no he podido solucionarlo, si alguien me ayuda estaria muy agradecido =).

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Curso {

private String sigla;
private int creditos;

public Curso(String sig, int cred)
{
sigla = sig;
creditos = cred;
}
public int Creditos()
{
return creditos;
}
public String Sigla()
{
return sigla;
}

}

public class Alumno {

String nombre;
private Curso[] cursos;
private int cantidadCursos;
private int maximaCantidadCursos;

public Alumno(String nom)
{
nombre = nom;
cantidadCursos = 0;
maximaCantidadCursos = 6;
cursos = new Curso[maximaCantidadCursos];
}

public Alumno() {
menu();
}

public void menu(){
BufferedReader leer = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Ingrese nombre alumno: ");
String nombre = null;
try {
nombre = leer.readLine();
} catch (IOException e) {
e.printStackTrace();
}

Alumno alumno = new Alumno(nombre);

System.out.println("1 TieneCurso");
System.out.println("2 AsignaCurso");
System.out.println("3 CantidadTotalCreditos");
System.out.println("4 ImprimeListaCursos");
System.out.println("5 EliminaCurso");
System.out.print("Ingrese opcion: ");
int opcion = 0;
try {
opcion = Integer.parseInt(leer.readLine());
} catch (NumberFormatException e) {
System.out.println("Ingrese opcion numerica");
} catch (IOException e) {
System.out.println("Error I/O");
}
switch(opcion){

case 1:
System.out.println("Ingrese Sigla: ");
String sig = null;
try {
sig = leer.readLine();
} catch (IOException e) {
System.out.println("Error I/O");
}
System.out.println("Ingrese Creditos: ");
int cred = 0;
try {
cred = Integer.parseInt(leer.readLine());
} catch (IOException e) {
System.out.println("Error I/O");
}
Curso c = new Curso(sig, cred);
alumno.TieneCurso(c);
break;
case 2: //crear recepcionista)
// alumno.AsignaCurso(c);
break;
case 3:
// alumno.CantidadTotalCreditos();
break;
case 4:
/// alumno.ImprimeListaCursos();
break;
case 5:
// alumno.EliminaCurso(c);
break;
}
}
public boolean TieneCurso(Curso c){
boolean tiene = false;
for(int i = 0; i <= maximaCantidadCursos; i++){
if(cursos[i].Sigla().equals(c.Sigla()) && (cursos[i].Creditos() == c.Creditos())){
tiene = true;
break;
}
}
return tiene;
}

public void AsignaCurso(Curso c){

}
public int CantidadTotalCreditos(){
return cantidadCursos;

}
public void ImprimeListaCursos(){

}
public void EliminaCurso(Curso c){

}

public static void main(String[] args) {

new Alumno();

}

}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ayuda con error NullPointerException

Publicado por YamilBracho (2074 intervenciones) el 25/06/2010 21:26:56
Chequea cuantas materias vio el alumno porque estas asumiendo que inscribio maximaCantidadCursos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar