Uebungsaufgaben/Semester1/Aufgabe6.java
2024-04-30 17:23:13 +02:00

126 lines
3.5 KiB
Java

package Semester1;
public class Aufgabe6 {
public static void main(String[] args){
Arbeiter meier = new Arbeiter(4711, "Meier", "Frank", 14.67);
meier.print();
Facharbeiter mueller = new Facharbeiter(4712, "Müller", "Steffi", 18.33, "Chemie");
mueller.print();
Manager kaiser = new Manager(4713, "Kaiser", "Karl-Heinz", 19.00,
10, "Matzda Cabrio", "S-ZZ-999");
kaiser.print();
}
}
abstract class Mitarbeiter{
int personalNummer;
String name;
String vorname;
abstract void print();
void setPersonalNummer(int i){personalNummer=i;}
void setName(String s){name=s;}
void setVorname(String s){vorname=s;}
int getPersonalNummer(){return personalNummer;}
String getName(){return name;}
String getVorname(){return vorname;}
}
class Angestellter extends Mitarbeiter{
double monatsGehalt;
public Angestellter(int personalNummer, String name, String vorname, double monatsGehalt) {
this.personalNummer = personalNummer;
this.name = name;
this.vorname = vorname;
this.monatsGehalt = monatsGehalt;
}
void print(){
System.out.println(getPersonalNummer());
System.out.println(getName());
System.out.println(getVorname());
System.out.println(monatsGehalt);
}
}
class LeitenderAngestellter extends Angestellter{
double bonus;
public LeitenderAngestellter(int personalNummer, String name, String vorname, double monatsGehalt, double bonus) {
super(personalNummer, name, vorname, monatsGehalt);
this.bonus = bonus;
}
void print(){
System.out.println(getPersonalNummer());
System.out.println(getName());
System.out.println(getVorname());
System.out.println(monatsGehalt);
System.out.println(bonus);
}
}
class Manager extends LeitenderAngestellter{
String firmenWagenTyp;
String kennzeichen;
public Manager(int personalNummer, String name, String vorname, double monatsGehalt, double bonus, String firmenWagenTyp, String kennzeichen) {
super(personalNummer, name, vorname, monatsGehalt, bonus);
this.firmenWagenTyp = firmenWagenTyp;
this.kennzeichen = kennzeichen;
}
void print(){
System.out.println(getPersonalNummer());
System.out.println(getName());
System.out.println(getVorname());
System.out.println(monatsGehalt);
System.out.println(bonus);
System.out.println(firmenWagenTyp);
}
}
class Arbeiter extends Mitarbeiter{
double stundenSatz;
public Arbeiter(int personalNummer, String name, String vorname, double stundenSatz) {
this.personalNummer = personalNummer;
this.name = name;
this.vorname = vorname;
this.stundenSatz = stundenSatz;
}
void print(){
System.out.println(getPersonalNummer());
System.out.println(getName());
System.out.println(getVorname());
System.out.println(stundenSatz);
}
}
final class Facharbeiter extends Arbeiter{
String fachRichtung;
public Facharbeiter(int personalNummer, String name, String vorname, double stundenSatz, String fachRichtung) {
super(personalNummer, name, vorname, stundenSatz);
this.fachRichtung = fachRichtung;
}
void print(){
System.out.println(getPersonalNummer());
System.out.println(getName());
System.out.println(getVorname());
System.out.println(stundenSatz);
System.out.println(fachRichtung);
}
}