Foros del Web » Programación para mayores de 30 ;) » Java »

No me funciona, miren el codigo

Estas en el tema de No me funciona, miren el codigo en el foro de Java en Foros del Web. tengo el siguiente código: Código: class Periodica extends Publicacion implements Serializable{ int volumen; int fecha[]=new int[3]; int nPeriodica=0; public Periodica(String titulo, String materia, int volumen, ...
  #1 (permalink)  
Antiguo 01/05/2004, 17:23
 
Fecha de Ingreso: junio-2002
Ubicación: España
Mensajes: 348
Antigüedad: 22 años, 5 meses
Puntos: 8
No me funciona, miren el codigo

tengo el siguiente código:
Código:
class Periodica extends Publicacion implements Serializable{
	int volumen;
	int fecha[]=new int[3];
	int nPeriodica=0;
	public Periodica(String titulo, String materia, int volumen, int dia, int mes, int agno){
		super (titulo, materia);
		this.volumen=volumen;
		fecha[0]=dia;
		fecha[1]=mes;
		fecha[2]=agno;
		nPeriodica++;
	}
	}
en otra clase creo un fichero y meto los datos de un objeto que tambien creo en ese fichero con el siguiente codigo:
Código:
FileOutputStream salida=new FileOutputStream("fichero.txt");
ObjectOutputStream librosSalida=new ObjectOutputStream(salida);
//aqui pediria los datos: titulo, materia, volumen...
Periodica a=new Periodica(titulo, materia, volumen, dia, mes, anio);
librosSalida.writeObject(a);
Cuando creo el objeto a de la clase periodica me tendria que aumentar el atributo nPeriodica pero no lo hace. ¿Cual es el error?, ¿que tengo hecho mal?

Saludos
  #2 (permalink)  
Antiguo 17/05/2004, 04:03
 
Fecha de Ingreso: mayo-2004
Mensajes: 75
Antigüedad: 20 años, 6 meses
Puntos: 2
Supongo que lo que quieres es que nPeriodica sea un contador del numero de objetos Periodica que has creado ¿no?, en este caso al declarar la variable nPeriodica tienes que hacerlo asi:

static int nPeriodica=0;

Si pones el static todos los objetos Periodica comparten esta variable. Si no lo pones cuando creas un objeto nPeriodica siempre empieza con valor 0 y le suma 1 por lo que siempre es uno.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:29.