Está en la página 1de 15

Programacioó n Orientado a Objetos IS-142

Ingenieríóa de Sistemas - UNSCH


HERENCIA
1. A partir de la clase Punto_bidimensional, cree la clase
Punto_tridimensional.

Primero se crea la calse Punto_bidimensional

package figura;
public class Punto_bidimensional {
private double coord_x;
private double coord_y;
public Punto_bidimensional(double coord_x, double coord_y) {
setCoord_x(coord_x);
setCoord_y(coord_y);

}
public Punto_bidimensional() {

public double getCoord_x() {


return coord_x;
}

public void setCoord_x(double coord_x) {


this.coord_x = coord_x;
}

public double getCoord_y() {


return coord_y;
}

public void setCoord_y(double coord_y) {


this.coord_y = coord_y;
}
public String toString(){
return "Soy el punto Bidimensional "+"mi coordenada X es "+getCoord_x()
+"mi coordenada Y es "+getCoord_y();
}
}

Segundo se crea la calse Punto_tridimensional


package figura;

public class Punto_tridimensional extends Punto_bidimensional {


private double coord_z;
public Punto_tridimensional(double x, double y, double z){
super(x,y);
1
Programacioó n Orientado a Objetos IS-142
Ingenieríóa de Sistemas - UNSCH
setCoord_z(z);
}

public double getCoord_z() {


return coord_z;
}
public void setCoord_z(double coord_z) {
this.coord_z = coord_z;
}
public String toString(){
return "Soy el punto Tridimensional "+"mi coordenada X es "+getCoord_x()
+"mi coordenada Y es "+getCoord_y()+"mi coordenada Z es "+getCoord_z();
}
}

Por último probamos el código


package figura;

public class Prueba {


public static void main(String[] args) {
Punto_bidimensional dos= new Punto_bidimensional(1,2);
Punto_tridimensional tres= new Punto_tridimensional(3,2,1);

System.out.println(dos.toString());
System.out.println(tres.toString());
}
}

Ejercicio.

Una empresa cuenta con diferentes tipos de empleados, registrando su nombre, apellido
y número de seguro.
 Empleado Asalariado, registra su sueldo semanal.
 Empleado Por comisión, registra su taza de comisión y sus ventas.
 Empleado Por horas, registra el sueldo por hora y las horas trabajadas.

Implementar en código java un programa que permita registrar a los distintos tipos de
empleados; además visualizar sus pagos mensuales y el importe total que la empresa
asume por pago a empleados.

Desarrollar las siguientes interfaces.

1. Crear un formulario JNomina. Dentro del formulario, crear el objeto Panel.


Darle el nombre de panelGeneral

2
Programacioó n Orientado a Objetos IS-142
Ingenieríóa de Sistemas - UNSCH

2. Crear dentro del objeto panelGeneral, crear el objeto Tabbed Pane. Darle el
nombre panelDatosEmpleados.

3
Programacioó n Orientado a Objetos IS-142
Ingenieríóa de Sistemas - UNSCH

3. Crear dentro del objeto panelDatosEmpleados, crear 5 objetos Panel. Darle los
nombres panelEmpleado, panelAsalariado, panelHoras, panelComisión,
PanelNomina.

4
Programacioó n Orientado a Objetos IS-142
Ingenieríóa de Sistemas - UNSCH
4. A cada pestaña cambiar de nombre, como sigue:.

5. Diseñar la pestaña Empleado de la siguiente manera:

Dar los siguientes nombres a las cajas de texto:

TxtNombre

txtApellido

txtSeguro

6. Diseñar la pestaña Empleado Asalariado de la siguiente manera:


5
Programacioó n Orientado a Objetos IS-142
Ingenieríóa de Sistemas - UNSCH

Dar el nombre txtSalariosemanal a la caja de texto y al botón btnGuardarAsalariado

7. Diseñar la pestaña Empleado Por Horas de la siguiente manera:

Dar el nombre txtSueldo y txtHoras a las cajas de texto y a los botones btnGuardarHoras y
btnSumarHoras.

8. Diseñar la pestaña Empleado Por Comisión de la siguiente manera:

6
Programacioó n Orientado a Objetos IS-142
Ingenieríóa de Sistemas - UNSCH

Dar el nombre txtTazaComision y txtVentas a las cajas de texto y a l botón


btnGuardarComisión.

9. Diseñar la pestaña Nómina de la siguiente manera:

7
Programacioó n Orientado a Objetos IS-142
Ingenieríóa de Sistemas - UNSCH

Dar el nombre txtresultado a la caja de texto y a l botón btnVisualizar.

Copiar el siguiente código:

public abstract class Empleado {


private String nombre;
private String apellido;
8
Programacioó n Orientado a Objetos IS-142
Ingenieríóa de Sistemas - UNSCH
private String num_seguro;

public abstract double calcularPago();

public String imprimeRecibo(){


return "Nombre "+getNombre()+" "+getApellido()
+" Su pago mensual es"+calcularPago()+"\n";
}

public Empleado(String n, String a, String num){


nombre=n;
apellido=a;
num_seguro=num;
}

/**
* @return the nombre
*/
public String getNombre() {
return nombre;
}

/**
* @param nombre the nombre to set
*/
public void setNombre(String nombre) {
this.nombre = nombre;
}

/**
* @return the apellido
*/
public String getApellido() {
return apellido;
}

/**
* @param apellido the apellido to set
*/
public void setApellido(String apellido) {
this.apellido = apellido;
}

/**
* @return the num_seguro
*/
public String getNum_seguro() {
return num_seguro;
}

9
Programacioó n Orientado a Objetos IS-142
Ingenieríóa de Sistemas - UNSCH
/**
* @param num_seguro the num_seguro to set
*/
public void setNum_seguro(String num_seguro) {
this.num_seguro = num_seguro;
}

public class EmpAsalariado extends Empleado{


private double salarioSemanal;

public EmpAsalariado(String n, String a, String num, double s){


super(n,a,num);
salarioSemanal=s;
}
public double calcularPago(){
return getSalarioSemanal()*4;
}

/**
* @return the salarioSemanal
*/
public double getSalarioSemanal() {
return salarioSemanal;
}

/**
* @param salarioSemanal the salarioSemanal to set
*/
public void setSalarioSemanal(double salarioSemanal) {
this.salarioSemanal = salarioSemanal;
}

public class EmpComision extends Empleado {


private double tazaComision;
private int ventas;

public EmpComision(String n,String a, String num,int v, double t){


super(n,a,num);
10
Programacioó n Orientado a Objetos IS-142
Ingenieríóa de Sistemas - UNSCH
ventas=v;
tazaComision=t;

}
public double calcularPago(){
return getTazaComision()*getVentas();
}

/**
* @return the tazaComision
*/
public double getTazaComision() {
return tazaComision;
}

/**
* @param tazaComision the tazaComision to set
*/
public void setTazaComision(double tazaComision) {
this.tazaComision = tazaComision;
}

/**
* @return the ventas
*/
public int getVentas() {
return ventas;
}

/**
* @param ventas the ventas to set
*/
public void setVentas(int ventas) {
this.ventas = ventas;
}

public class EmpHoras extends Empleado{


private int horas;
private double sueldo;

public EmpHoras(String n,String a, String num,int h, double s){


super(n,a,num);
horas=h;
sueldo=s;
11
Programacioó n Orientado a Objetos IS-142
Ingenieríóa de Sistemas - UNSCH

}
public double calcularPago(){
return getSueldo()*getHoras();
}
/**
* @return the horas
*/
public int getHoras() {
return horas;
}

/**
* @param horas the horas to set
*/
public void setHoras(int horas) {
this.horas = horas;
}

/**
* @return the sueldo
*/
public double getSueldo() {
return sueldo;
}

/**
* @param sueldo the sueldo to set
*/
public void setSueldo(double sueldo) {
this.sueldo = sueldo;
}

public class JNomina extends javax.swing.JFrame {


Empleado emp[];
int c=0;
/** Creates new form JNomina */
public JNomina() {
initComponents();
emp =new Empleado[100];
}

12
Programacioó n Orientado a Objetos IS-142
Ingenieríóa de Sistemas - UNSCH
private void btnGuardarAsalariadoActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:

double sSemanal;
String nombre,apellido, seguro;
nombre=txtNombre.getText();
apellido=txtApellido.getText();
seguro=txtSeguro.getText();
sSemanal= Double.parseDouble(txtSalarioSemanal.getText());
emp[c]=new EmpAsalariado(nombre,apellido ,seguro, sSemanal);
c++;
JOptionPane.showMessageDialog(null,"Se guardó los datos");

private void btnGuardarHorasActionPerformed(java.awt.event.ActionEvent evt) {


// TODO add your handling code here:
int horas;
double sueldo;
String nombre,apellido, seguro;
nombre=txtNombre.getText();
apellido=txtApellido.getText();
seguro=txtSeguro.getText();

horas= Integer.parseInt(txtHoras.getText());
sueldo= Double.parseDouble(txtSueldo.getText());
emp[c]=new EmpHoras(nombre, apellido, seguro,horas, sueldo);
c++;
JOptionPane.showMessageDialog(null,"Se guardó los datos");

private void btnGuardarComisionActionPerformed(java.awt.event.ActionEvent evt) {


// TODO add your handling code here:

int ventas;
double comision;
String nombre,apellido, seguro;
nombre=txtNombre.getText();
apellido=txtApellido.getText();
seguro=txtSeguro.getText();

ventas= Integer.parseInt(txtVentas.getText());
comision= Double.parseDouble(txtTazaComision.getText());
emp[c]=new EmpComision(nombre, apellido, seguro,ventas, comision);
c++;
JOptionPane.showMessageDialog(null,"Se guardó los datos");
13
Programacioó n Orientado a Objetos IS-142
Ingenieríóa de Sistemas - UNSCH

private void btnVisualizarActionPerformed(java.awt.event.ActionEvent evt) {


// TODO add your handling code here:

String cadena ="";


for (int i=0;i< c;i++)
{
Empleado e=emp[i];
cadena+=e.imprimeRecibo();
}
txtResultado.setText(cadena);
}
public void imprimirInforme(){
// System.out.println("Informe de nómina : ");
// System.out.println("Pago total : "+pago_total);

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new JNomina().setVisible(true);
}
});
}

// Variables declaration - do not modify


private javax.swing.JButton btnGuardarAsalariado;
private javax.swing.JButton btnGuardarComision;
private javax.swing.JButton btnGuardarHoras;
private javax.swing.JButton btnSumarHoras;
private javax.swing.JButton btnVisualizar;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JLabel jLabel8;
private javax.swing.JLabel jLabel9;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JPanel panelAsalariado;
private javax.swing.JPanel panelComision;
private javax.swing.JTabbedPane panelDatosEmpleados;
14
Programacioó n Orientado a Objetos IS-142
Ingenieríóa de Sistemas - UNSCH
private javax.swing.JPanel panelEmpleado;
private javax.swing.JPanel panelGeneral;
private javax.swing.JPanel panelHoras;
private javax.swing.JPanel panelNomina;
private javax.swing.JTextField txtApellido;
private javax.swing.JTextField txtHoras;
private javax.swing.JTextField txtNombre;
private javax.swing.JTextArea txtResultado;
private javax.swing.JTextField txtSalarioSemanal;
private javax.swing.JTextField txtSeguro;
private javax.swing.JTextField txtSueldo;
private javax.swing.JTextField txtTazaComision;
private javax.swing.JTextField txtVentas;
// End of variables declaration

class Domain Mo...

Serv icio

+ calcularPago() : double

Empleado

- apellido: String
- nombre: String
- numSeguro: String

+ calcularPago() : double
+ imprimeRecibo() : void

Asalariado PorHoras Comision


- sueldoSemanal: double - horas: int
- sueldoHoras: double
+ calcularPago() : double

15

También podría gustarte