Ver Mensaje Individual
  #3 (permalink)  
Antiguo 16/11/2005, 22:15
Avatar de TolaWare
TolaWare
Colaborador
 
Fecha de Ingreso: julio-2005
Mensajes: 4.352
Antigüedad: 18 años, 10 meses
Puntos: 24
El problema se basa en la clase sucursal. Esta clase tiene el siguiente atributo:

private Calzado [] Calzados;

el cual has inicializado de la siguiente manera:
Calzados=new Calzado[3];
esta inicializacion crea el array Calzados con 3 referencias a objetos Calzado,
luego cuando quieres utilizar este array lo haces de la siguiente manera:

Calzados[Marca].Quitar(Cant);
y aqui se te genera un error muy comun con los arrays:
Con la instruccion Calzados[Marca] haces referencia un objeto que nunca se creo, porque lo unico que has creado de clazados es el array de referencias a Calzados, pero nunca creaste los 3 objetos calzado correspondiente a este array, por lo que la solucion es agregar al consturctor de la clase sucursal las siguientes lineas

for(int i=0 ; i<Calzados.length ; i++){
[I]Calzados[i] = new Calzado(Marca[i],Precio[i],Unidad);
}

Marca Precio y Unidad deben ser pasados como parametros al constructor de calzados, Marca[0] contiene la marca del primer calzado Precio[0] contiene el precio del primer calzado Unidad[2] conteneria las unidades del 3 calzado.
de esta manera, el array calzados, no apunta mas a objetos que no existen y tu problema deberia haberse solucionado.
__________________
http://blog.tolaware.com.ar -> Blog de Java, Ruby y Linux