Herencia y Polimorfismo POO - Curso de Java - Algoritmos y Programación (24-25)
En este artículo continuamos revisando conceptos de programación orientada a objetos, trabajaremos con herencia para crear una superclase y subclases implementando un ejemplo en el lenguaje de programación Java utilizando el IDE NetBeans.
Puedes ver todos los vídeos directamente en youtube:
https://www.youtube.com/watch?v=vYj9DGnMIzY&index=24&list=PLZPrWDz1Molqy8PjM4PnMPyZzJf5LH1M2
Visita nuestro canal en youtube y revisa cursos de Desarrollo de software y aprende a diseñar sistemas informáticos totalmente gratis:
www.youtube.com/jcarlosad7
Gracias por seguir con este curso completo de java desde cero, bienvenidos les sugiero a todos los que se inician a programar aplicaciones java que sigan este tutorial completo.
Compartan el curso y suscríbanse amigos.
Puedes ver todos los vídeos directamente en youtube:
https://www.youtube.com/watch?v=vYj9DGnMIzY&index=24&list=PLZPrWDz1Molqy8PjM4PnMPyZzJf5LH1M2
Visita nuestro canal en youtube y revisa cursos de Desarrollo de software y aprende a diseñar sistemas informáticos totalmente gratis:
www.youtube.com/jcarlosad7
Gracias por seguir con este curso completo de java desde cero, bienvenidos les sugiero a todos los que se inician a programar aplicaciones java que sigan este tutorial completo.
Compartan el curso y suscríbanse amigos.
Herencia
- Es un mecanismo que sirve para reutilizar clases
- Se utiliza cuando existen clases que comparten muchas de sus características
- Se extiende la funcionalidad de clases más genéricas
- Se introducen los conceptos de superclase y subclase
Polimorfismo
- Se puede modificar localmente el comportamiento de los métodos heredados.
- De esta manera, objetos de diferentes tipos pueden responder de forma diferente a la misma llamada.
- Este es el concepto clave del polimorfismo.
Ejemplo:
- Se mueve igual un pez, un pájaro o una rana?.
- En cambio, todos son animales y por tanto podrían heredar el método mover de dicha clase.
- Gracias al polimorfísmo, cada objeto concreto realizaría la operación mover como corresponda.
2. Agregar los paquetes
3. Agregar las clases Cliente, Vendedor, Persona
package Clases;
public class Cliente extends Persona {
//Propiedades
private String categoria;
private String codigo;
//Métodos
public void generarCodigo()
{
this.setCodigo("C"+this.getNombres().substring(0,3)+this.getDocumento().substring(0,2));
}
//Métodos get and set
public String getCategoria() {
return categoria;
}
public void setCategoria(String categoria) {
this.categoria = categoria;
}
public String getCodigo() {
return codigo;
}
public void setCodigo(String codigo) {
this.codigo = codigo;
}
}
*** Clase Vendedor ***
package Clases;
public class Empleado extends Persona {
//Propiedades
private String tipoContrato;
private Double sueldo;
//Método
public void calcularSueldo(Double sueldoBase)
{
if (this.getTipoContrato()=="C")
{
this.setSueldo(sueldoBase+350);
}
else
{
this.setSueldo(sueldoBase+750);
}
}
//Métodos get and set
public String getTipoContrato() {
return tipoContrato;
}
public void setTipoContrato(String tipoContrato) {
this.tipoContrato = tipoContrato;
}
public Double getSueldo() {
return sueldo;
}
public void setSueldo(Double sueldo) {
this.sueldo = sueldo;
}
}
*** Clase Persona ***
package Clases;
public class Persona {
//Propiedades
private String apellidos;
private String nombres;
private String documento;
private String tipo;
//Constructores
public Persona() {
}
public Persona(String apellidos, String nombres, String documento, String tipo) {
this.apellidos = apellidos;
this.nombres = nombres;
this.documento = documento;
this.tipo = tipo;
}
//Métodos get y set
public String getApellidos() {
return apellidos;
}
public void setApellidos(String apellidos) {
this.apellidos = apellidos;
}
public String getNombres() {
return nombres;
}
public void setNombres(String nombres) {
this.nombres = nombres;
}
public String getDocumento() {
return documento;
}
public void setDocumento(String documento) {
this.documento = documento;
}
public String getTipo() {
return tipo;
}
public void setTipo(String tipo) {
this.tipo = tipo;
}
}
4. Agregamos el JFrameForm
*** Ir a la opción del Código para empezar a trabajar ***
package Interfaces;
import Clases.Empleado;
import javax.swing.table.DefaultTableModel;
public class FrmEmpleado extends javax.swing.JFrame {
DefaultTableModel modelo;
public FrmEmpleado() {
initComponents();
modelo=(DefaultTableModel)listado.getModel();
}
Código del btnAgregar
private void btnAgregarActionPerformed(java.awt.event.ActionEvent evt) {
Empleado emp=new Empleado();
emp.setNombres(txtNombres.getText());
emp.setApellidos(txtApellidos.getText());
emp.setDocumento(txtDocumento.getText());
emp.setTipo((String)cboTipoPersona.getSelectedItem());
emp.setTipoContrato((String)cboTipoContrato.getSelectedItem());
emp.calcularSueldo(750.0);
modelo.addRow(new
Object[] {emp.getTipo(),emp.getNombres(),emp.getApellidos(),emp.getDocumento(),
emp.getSueldo()});
}
Herencia y Polimorfismo POO (24-25) Curso de Java - Algoritmos y Programación
Saludos Imperio, un abrazo a la distancia.
Herencia y Polimorfismo POO - Curso de Java - Algoritmos y Programación (24-25)
Reviewed by Liliana Nataly Arcila Diaz
on
9:14
Rating:
me pone error donde dice import clases.Empleado
ResponderEliminar