Click here to load reader
Upload
gloria-lora
View
18
Download
0
Embed Size (px)
Citation preview
Universidad de El Salvador
Facultad Multidisciplinaria de Occidente
Escuela de Ingeniería y Arquitectura
Departamento de Ingeniería en Sistemas
Cátedra de Estructura de Datos
Practica de Laboratorio
Tema: Implementación de un arreglo de objetos y su respectiva representación en una aplicación
desktop J2SE.
Objetivo: Dar solución a la implementación de las clases del parcial 1 y abordar el tema de arrays
con implementación de GUI usando swing.
Indicaciones de la práctica:
1- Crear un nuevo proyecto en el entorno de trabajo Netbeans, Cuyo nombre será “practica1” y
formara parte del paquete “ues.occ.estructuradedatos” , El proyecto inicialmente solo tendrá una
clase principal la cual incorporara el método main() de donde se iniciara la aplicación que
implementara este proyecto.
La primera atapa de de esta guía consiste en desarrollar las clases, persona y trabajador, en
donde la segunda será una subclase de la primera.
La clase persona deberá de tener los siguientes atributos.
• nombres
• apellidos
• edad
Siendo estos atributos del tipo String, String e int respectivamente. La clase trabajador será una
subclase de persona y además de eso implementará los atributos
• id
• sueldo
Siendo estos del tipo int y double respectivamente.
2- Se pide además crear los respectivos getter’s y setter’s de la clase persona y la clase
trabajador, así como también los constructores necesarios de la clase según se detalla a
continuación.
Constructores de la clase persona:
persona(String nombres, String apellidos, int edad)
persona(String nombres,int edad)
persona(String edad)
persona()
3- Para la clase trabajador se deberá de crear un constructor que reciba como parámetros todos
los miembros y que pase los parámetros que corresponda al constructor de la superclase
utilizando el objeto super.
4- A demás se pide sobre escribir el método toString de la clase persona para que este devuelva la
siguiente expresión:
nombres + " " + apellidos + " su edad actual es:" + edad
5- Se pide como actividad extra laboratorio Implementar la clase “trabajador” que se ha creado
en una interface de usuario con el uso de controles swing (JFrame) y los controles necesarios para
manejar la información que se produzca en un arreglo de 10 elementos del tipo trabajador.
El código de las clases que se piden se detalla a continuación:
Clase persona:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package ues.occ.estructuradedatos;
/**
*
* @author elopez
*/
public class persona{
/** Constructores
* persona()
* persona (String nombre, String apellidos)
*/
persona(String nombre, String apellido, int edad)
{
this.nombres = nombre;
this.edad = edad;
this.apellidos = apellido;
}
persona(String nombre,int edad)
{
this.nombres = nombre;
this.edad = edad;
this.apellidos = null;
}
persona(String nombre)
{
this.nombres=nombre;
this.apellidos = null;
this.edad = 18;
}
persona()
{
this.nombres=null;
this.apellidos = null;
this.edad = 18;
}
/* Propiedades o miembros de la clase
* String nombres
* String apellidos
*/
private String nombres = null;
private String apellidos = null;
private int edad = 18;
public String getApellidos() {
return apellidos;
}
public int getEdad() {
return edad;
}
public String getNombres() {
return nombres;
}
public void setApellidos(String apellidos) {
this.apellidos = apellidos;
}
public void setEdad(int edad) {
this.edad = edad;
}
public void setNombres(String nombres) {
this.nombres = nombres;
}
@Override
public String toString() {
return this.nombres + " " + this.apellidos + " su edad actual es:" + this.edad ;
}
}
Clase trabajador:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package ues.occ.estructuradedatos;
/**
*
* @author elopez
*/
public class trabajador extends persona implements Comparable, Cloneable{
/**
* Constructor con llamada a la superclase
*/
public trabajador()
{
}
public trabajador(String nomb, String apell,int edad, int id, double sueldo)
{
super(nomb, apell, edad);
this.id = id;
this.sueldo= sueldo;
}
/** Primiedades o miembros de la clase
* int id
* double sueldo
*/
private int id;
private double sueldo;
public int getId() {
return id;
}
public double getSueldo() {
return sueldo;
}
public void setId(int id) {
this.id = id;
}
public void setSueldo(double sueldo) {
this.sueldo = sueldo;
}
@Override
public String toString() {
return super.toString();
}
public int compareTo(Object o) {
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
protected Object clone(){
Object clone = null;
try { clone = super.clone(); }
catch(CloneNotSupportedException e)
{ // No deberia suceder
}
return clone;
}
}