16/11/2005, 22:15
|
| Colaborador | | Fecha de Ingreso: julio-2005
Mensajes: 4.352
Antigüedad: 19 años, 6 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. |