Java - Duda con código

 
Vista:
sin imagen de perfil

Duda con código

Publicado por Alejandro (14 intervenciones) el 03/06/2016 23:55:24
Hola buen dia
Hoy vengo con una duda que me tiene estrezado... la duda trata de lo siguiente:

a. El constructor deberá recibir un parámetro
ArrayList que guardará objetos de tipo Animal
así como su respectivo get para poder ser
llamada desde fuera de la ventana.
b. Un marco (f) para agregar componentes de
tamaño 300 x 150 pixeles el cual no podrá ser modificado; la forma de acomodo será
un FlowLayout.
c. Una barra de menú (menuBar) con el menú Archivo (mnuArchivo) así como los
submenú Guardar (itmGuardar) y Salir (itmSalir)*.
d. Dos etiquetas Nombre y Vidas (lblNombre y lblVidas respectivamente).
e. Dos cajas de texto de tamaño 20 (txtNombre, txtVidas) asociadas a las etiquetas.
f. Dos botones Perro y Gato (btnPerro y btnGato respectivamente)*.
g. Establecer los métodos set de txtNombre, txtVidas.

*Mi duda esta en el punto a y en el g, como puedo hacer que el constructor reciba ese parámetro y como establecer metodos set...

el código que tengo es el siguiente


import javax.swing.*;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;

public class Ventana extends JFrame{
public static final int DEFAULT_WIDTH = 300;
public static final int DEFAULT_HEIGHT = 150;

private JTextField txtNombre, txtVidas;
private JLabel iblNombre, iblVidas;
private JButton btnPerro, btnGato;
private JMenuBar menuBar;
private JMenu mnuArchivo;
private JMenuItem itmGuardar,itmSalir;

public Ventana(){
JFrame frame = new JFrame("Ordinario");

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

Container contenedor;
contenedor = frame.getContentPane();
contenedor.setLayout(new FlowLayout());



menuBar=new JMenuBar();
frame.setJMenuBar(menuBar);
mnuArchivo=new JMenu("Archivo");
menuBar.add(mnuArchivo);
itmGuardar=new JMenuItem("Nombre");

mnuArchivo.add(itmGuardar);
itmSalir=new JMenuItem("Salir");

mnuArchivo.add(itmSalir);


iblNombre = new JLabel("Nombre");
iblVidas = new JLabel("Vidas");
txtNombre = new JTextField(20);
txtVidas = new JTextField(20);
btnPerro = new JButton("Perro");
btnGato = new JButton("Gato");


contenedor.add(iblNombre);
contenedor.add(txtNombre);
contenedor.add(iblVidas);
contenedor.add(txtVidas);
contenedor.add(btnGato);
contenedor.add(btnPerro);


frame.setSize(DEFAULT_WIDTH,DEFAULT_HEIGHT);
frame.setVisible(true);

}
}


a. AccBtnPerro(Ventana v) y AccBtnGato(Ventana v): A partir de las cajas de texto se
creará una instancia de la clase correspondiente al botón (Perro o Gato) y será
almacenada en un ArrayList de tipo Animal; antes de genera la instancia deberá validar
que existe información en las cajas de texto, de no ser así, se lanzará una excepción
(de la clase VacioException(Ventana v)) con un mensaje de error (JOptionPane).
b. AccMnuGuardar(Ventana v): Almacenará el contenido del ArrayList en un archivo
binario (homeUser\datos.dat); las clases Animal, Perro y Gato deberán ser
serializables para poder hacer esta acción.

y todos estos puntos...

La verdad llevó todo el día tratando de darle solución pero solo no puedo
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