Java - ayuda con programa de herencia

 
Vista:

ayuda con programa de herencia

Publicado por luis velazquez (6 intervenciones) el 22/05/2006 05:22:11
ps bien, soy un principiante en esto y ps al respecto no se mucho, de echo a penas he tenido como unas 5 clases de java, en fin, la maestra nos dejeo un programa que utilizara herencia, en la cual iba a haberuna clase principal(empleados) y tres derivadas que serian los departamentos de una empresa(sistemas,compras,ventas),debiamos detectaar cuales eran las variables que todas las clases compartian, sin embargo al querer llamar al superconstructor me marca muchos errores, ps la verdad me desespere y lo nico que hice, fue declarar objetos en el main para llamar a los metodos de cada una de las clases, y ps creo que eso no es lo correcto si se trata de herencia, quisiera que alguien me ayudara, ya compile el codigo y no marca ningun error pero quiero que puedad llamar al superconstructor, y q no sea llamada la clase madre con objetos, espero y alguien me entienda, ademas debi haberle puesto un ciclo for para que solo se hiciera el registro de 10 empleados, pero tambien me marcaba variios errores y no los detecte,espero y alguien me ayude, porfa.se que la forma en que se programo el codigo no es la mas adecuada, pero espero y me entiendan q no tengo nada de experiencia.

////////////////////////////////////////////////////////////////////////////
/*Main*/
import java.io.*;
import java.lang.*;
class registrototal {
public static void main (String[] args) throws IOException{
BufferedReader leer= new BufferedReader(new InputStreamReader(System.in));
empleados b = new empleados ();
sistemas c = new sistemas();
compras d= new compras();
ventas e= new ventas();
int area=0,opc=1,a=1;
while(opc == 1){
System.out.println("\n");
System.out.println("Registro de Nuevos Empleados ("+a+")");
System.out.print("¿En que Area se hara el nuevo registro:? 1.-Sistemas 2.-Ventas 3.-Compras---->");
area=Integer.parseInt(leer.readLine());
if(area == 1){
System.out.println("\n");
System.out.println("::::Registro Correspondiente al Area de Sistemas:::::");
b.captura();
c.capturasistemas();
b.imprime();
c.imprime();}
if(area == 2){
System.out.println("\n");
System.out.println("::::Registro Correspondiente al Area de Compras:::::");
b.captura();
d.capturacompras();
b.imprime();
d.imprime();}
if(area == 3){
System.out.println("\n");
System.out.println("::::Registro Correspondiente al Area de Ventas:::::");
b.captura();
e.capturaventas();
b.imprime();
e.imprime();}
System.out.println("\n");
System.out.print("¿Deseas hacer el registro de otro empleado? (1.-Si/2.-No)---->");
opc=Integer.parseInt(leer.readLine());
a++;
}
System.out.println("\n");
System.out.println("Saliendo del programa");
}}

////////////////////////////////////////////////////////////////////////////
/*Super Clase empleados*/
class empleados{
public empleados (String nombre,int numero, int telefono)
{
nom=nombre;
num=numero;
tel=telefono;
}
public empleados () {
nom=" ";
num=0;
tel=0;
}
public void captura(){
try{
BufferedReader leer= new BufferedReader(new InputStreamReader(System.in));
System.out.print("Nombre Completo del empleado:");
nom=leer.readLine();
System.out.print("Numero de Identificacion:");
num=Integer.parseInt(leer.readLine());
System.out.print("Numero de Telefono:");
tel=Integer.parseInt(leer.readLine());
}catch(IOException variablerror){System.out.println("error de captura");}
}
public void imprime(){
System.out.println("El dia de hoy se contrato al empleado " +nom +"en el Area de Sistemas,con un numero de control de: "+num+ " y numero de Telefono: " +tel+ "." );
}
protected String nom;
protected int num;
protected int tel;
}
////////////////////////////////////////////////////////////////////////////
/*Clase Derivada de Empleado llamada sistemas*/
class sistemas extends empleados{
public sistemas ()
{
sueldo=0;
puesto=" ";
actividad=" ";
}
public void capturasistemas(){
try{
BufferedReader leer= new BufferedReader(new InputStreamReader(System.in));
System.out.print("Sueldo:");
sueldo=Integer.parseInt(leer.readLine());
System.out.print("Puesto:");
puesto=leer.readLine();
System.out.print("Actividad que Realiza:");
actividad=leer.readLine();
}catch(IOException variablerror){System.out.println("error de captura");}
}
public void imprime(){
System.out.println("Tendra un sueldo de: $ "+sueldo+ " pesos.Su puesto sera de: "+puesto+ " y la actividad(es) que realizara, sera(n): "+actividad);
}
private int sueldo;
private String puesto;
private String actividad;
}
////////////////////////////////////////////////////////////////////////////
/*Clase Derivada de Empleado llamada compras*/
class compras extends empleados{
public compras ()
{
sueldo=0;
puesto=" ";
actividad=" ";
}
public void capturacompras(){
try{
BufferedReader leer= new BufferedReader(new InputStreamReader(System.in));
System.out.print("Sueldo:");
sueldo=Integer.parseInt(leer.readLine());
System.out.print("Puesto:");
puesto=leer.readLine();
System.out.print("Actividad que Realiza:");
actividad=leer.readLine();
}catch(IOException variablerror){System.out.println("error de captura");}
}
public void imprime(){
System.out.println("Tendra un sueldo de: $ "+sueldo+ " pesos.Su puesto sera de: "+puesto+ " y la actividad(es) que realizara, sera(n): "+actividad);
}
private int sueldo;
private String puesto;
private String actividad;
}
////////////////////////////////////////////////////////////////////////////
/*Clase Derivada de Empleado llamada compras*/
class ventas extends empleados{
public ventas ()
{
sueldo=0;
puesto=" ";
actividad=" ";
}
public void capturaventas(){
try{
BufferedReader leer= new BufferedReader(new InputStreamReader(System.in));
System.out.print("Sueldo:");
sueldo=Integer.parseInt(leer.readLine());
System.out.print("Puesto:");
puesto=leer.readLine();
System.out.print("Actividad que Realiza:");
actividad=leer.readLine();
}catch(IOException variablerror){System.out.println("error de captura");}
}
public void imprime(){
System.out.println("Tendra un sueldo de: $ "+sueldo+ " pesos.Su puesto sera de: "+puesto+ " y la actividad(es) que realizara, sera(n): "+actividad);
}
private int sueldo;
private String puesto;
private String actividad;
}
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