Curso Java  POO VIII. Construcción objetos III. Vídeo 34

Curso Java POO VIII. Construcción objetos III. Vídeo 34

Introducción a la Programación en Java

Contexto del Curso

  • Bienvenida al curso de programación en Java, donde se retoma un ejemplo anterior sobre la creación de un objeto de tipo empleado.
  • Se busca construir un objeto con propiedades como nombre, sueldo y fecha de alta, además de un método para aumentar el sueldo.

Estructura del Código

  • Se menciona que se está utilizando un único archivo fuente con dos clases: la clase principal (que contiene el método main) y la clase Empleado.
  • Las variables o campos de clase se declaran con el modificador private para encapsularlas y evitar modificaciones externas.

Construcción del Constructor

Parámetros del Constructor

  • El constructor recibirá cinco parámetros: uno de tipo String, dos de tipo double, y tres de tipo int.
  • Se asignan los valores pasados como parámetros a las variables correspondientes dentro del constructor.

Establecimiento de la Fecha

  • Para establecer la fecha de alta, se utilizará la clase predefinida GregorianCalendar, que permite crear una fecha específica.
  • La clase GregorianCalendar construye una fecha basada en día, mes y año.

Uso de Clases Predefinidas

Exploración de GregorianCalendar

  • Se accede a la documentación para entender cómo funciona la clase GregorianCalendar y sus constructores.
  • La clase pertenece al paquete java.util, que ya ha sido importado previamente.

Constructores Disponibles

  • Existen múltiples constructores en esta clase; uno por defecto que utiliza el tiempo actual y otro que permite establecer una fecha específica mediante parámetros.
  • Es importante notar que los meses deben ser representados como enteros desde 1 (enero) hasta 12 (diciembre).

Implementación Práctica

Creación del Objeto Calendar

¿Cómo crear un objeto de tipo GregorianCalendar?

Creación del objeto y uso del constructor

  • Se inicia la creación de un objeto de tipo GregorianCalendar al que se le asigna el nombre "calendario". Esto se realiza utilizando el operador new, lo que invoca el constructor de la clase.
  • Al utilizar el segundo constructor, es necesario pasar tres parámetros enteros: año, mes (menos uno) y día. El mes se resta en uno porque enero corresponde a cero.
  • Se recuerda que este constructor recibe los parámetros mencionados para establecer una fecha específica en el objeto calendario.
  • Se define otra variable llamada "altaContrato" que almacenará la fecha establecida en el objeto calendario, utilizando los parámetros pasados al constructor.
  • Para obtener la fecha almacenada, se utiliza el método getTime() perteneciente a la clase GregorianCalendar, lo cual permite acceder a la información de tiempo configurada en el objeto.

Métodos y herencia en programación orientada a objetos

  • A pesar de no encontrar directamente un método llamado getTime() en la API, Eclipse sugiere que pertenece a la clase GregorianCalendar. Esto resalta cómo algunos métodos pueden ser heredados.
  • La falta del método visible puede deberse a que está heredado de una clase superior. En este caso, se menciona que hay un método similar llamado getTimeZone().
  • Introducción al concepto de herencia: una característica clave en programación orientada a objetos donde una clase puede heredar propiedades y métodos de otra clase.
  • Se compara la herencia con situaciones cotidianas; así como los hijos heredan bienes de sus padres, las clases pueden heredar atributos y comportamientos entre sí.
  • En este contexto, se explica cómo la clase GregorianCalendar hereda tanto métodos como propiedades de las clases superiores (Calendar y Object), ampliando su funcionalidad.

Exploración del árbol genealógico de clases

  • Se ilustra mediante un diagrama cómo las relaciones jerárquicas entre clases funcionan: por ejemplo, si consideramos a Object como abuelo, luego a Calendar como padre y finalmente a GregorianCalendar como hijo.
  • La importancia radica en entender que todos los métodos y propiedades disponibles en las clases superiores son accesibles para las subclases.
  • Al explorar más sobre los métodos dentro de la clase superior (Calendar), se confirma que efectivamente existe un método llamado getTime(), lo cual valida su uso previo.

¿Cómo construir métodos en programación orientada a objetos?

Introducción a la construcción de métodos

  • Se menciona que se debe almacenar un dato de tipo ID en una variable de tipo "alta contactos" y que el objeto calendario es del tipo "GregorianCalendar", lo cual permite manejar fechas específicas para trabajadores.
  • Se concluye la explicación del constructor, que establece un estado inicial para el objeto empleado, preparando el terreno para los métodos necesarios.

Métodos Getter y Setter

Creación de métodos Getter

  • Se inicia la creación del primer método getter, destinado a devolver el nombre del empleado. Este método será accesible desde otras clases.
  • El método getter debe especificar su tipo de retorno (String), y no recibe parámetros. La estructura básica incluye abrir y cerrar llaves.
  • Es necesario incluir una instrucción return en el getter para evitar errores; este retornará el nombre almacenado en la variable correspondiente.

Implementación de otros getters

  • Se introduce otro método getter para devolver el sueldo del empleado, especificando que este es un valor de tipo doble debido a la posibilidad de decimales.
  • Un tercer método getter se crea para obtener la fecha de alta del trabajador, utilizando un objeto de tipo Date como retorno.

Método Setter: Aumento del Sueldo

Construcción del setter

  • Se presenta un método setter llamado "subeSueldo", diseñado para aumentar el sueldo sin devolver ningún valor. Este recibirá un parámetro que representa un porcentaje.
  • Dentro del setter, se declara una variable llamada "aumento" que calcula cuánto se incrementará el sueldo basado en el porcentaje proporcionado por el usuario.

Ejemplo práctico

Creación de la Clase Empleado en Programación

Implementación del Operador y Constructor

  • Se discute el uso del operador "más igual" para incrementar el sueldo establecido en el constructor de la clase empleado. Este incremento se realiza mediante una expresión que modifica el valor original.
  • La clase empleado incluye un constructor que recibe varios parámetros, utilizando la clase GregorianCalendar para construir una fecha que se almacena en la variable calendario.

Métodos de la Clase Empleado

  • Se mencionan métodos sencillos dentro de la clase empleado: getters para obtener nombre, sueldo y fecha de alta, así como setters para modificar el sueldo.
  • Una vez construida la clase empleado, se planea avanzar hacia la creación de instancias (ejemplares) de esta clase en un futuro video.

Preparativos para Instanciar Clases

  • Se anticipa que en el próximo video se abordará cómo pasar parámetros al constructor al crear instancias de la clase empleado. Esto incluirá diversas formas y técnicas aprendidas hasta ahora.
Video description

Seguimos elaborando el ejemplo del vídeo anterior, construyendo los métodos getters y setters del objeto de tipo Empleado. Para más cursos, manuales y ejercicios, visita http://www.pildorasinformaticas.com