Hallo zusammen,
ich möchte meine Java Kenntnisse verbessern, und deshalb will ich die folgende Aufgabe lösen. Ein Teil der Aufgabe habe ich bereits selber gemacht, und ich hoffe es stimmt soweit? Aber leider komme ich nicht mehr weiter. Den es heisst in der Aufgabe "Schreiben Sie eine Methode, die eine beliebige Anzahl von Person-Objekten als Parameter erhält". Wie kann ich das machen, kann mir da jemand ein Beispiel geben? Die Aufgabe steht unten und mein Code hange ich dazu. Vielen Dank im Vorraus
Aufgabe: Erstellen Sie eine einfache Klassenhierarchie zur Gehaltsberechnung: Leiten Sie von einer abstrakten Basisklasse Person die zwei Unterklassen Angestellter und LeitenderAngestellter ab. Alle Personen sollen über einen Namen verfügen, allerdings wird das Gehalt jeweils unterschiedlich berechnet: – Das Gehalt für Angestellte beträgt 2.000 Euro und erhöht sich um 50 Euro je Überstunde (Attribut der Klasse Angestellter). – Das Gehalt für leitende Angestellte beträgt 3.000 Euro plus Bonus (Attribut der Klasse LeitenderAngestellter). Leitende Angestellte machen keine Überstunden! Schreiben Sie eine Methode, die eine beliebige Anzahl von Person-Objekten als Parameter erhält, für jede Person jeweils Name und Gehalt sowie die Gesamtsumme der Gehälter aller Personen ausgibt.
package ubungsblatt;
abstract class Person {
private String name;
public Person(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
package ubungsblatt;
public class Angestellter extends Person{
private double salary = 2000;
public Angestellter(String name) {
super(name);
setSalary(salary,5);
}
public double getSalary() {
return salary;
}
public void setSalary(double newSalary, int uberStunden) {
salary = salary + (uberStunden *50);
}
public void info()
{
System.out.println("Name: " + getName()+"\n" + "Gehalt: " + getSalary());
}
}
package ubungsblatt;
public class LeitenderAngestellter extends Person {
private double salary = 3000;
public LeitenderAngestellter(String name) {
super(name);
setSalary(salary,500);
}
public double getSalary() {
return salary;
}
ich möchte meine Java Kenntnisse verbessern, und deshalb will ich die folgende Aufgabe lösen. Ein Teil der Aufgabe habe ich bereits selber gemacht, und ich hoffe es stimmt soweit? Aber leider komme ich nicht mehr weiter. Den es heisst in der Aufgabe "Schreiben Sie eine Methode, die eine beliebige Anzahl von Person-Objekten als Parameter erhält". Wie kann ich das machen, kann mir da jemand ein Beispiel geben? Die Aufgabe steht unten und mein Code hange ich dazu. Vielen Dank im Vorraus
Aufgabe: Erstellen Sie eine einfache Klassenhierarchie zur Gehaltsberechnung: Leiten Sie von einer abstrakten Basisklasse Person die zwei Unterklassen Angestellter und LeitenderAngestellter ab. Alle Personen sollen über einen Namen verfügen, allerdings wird das Gehalt jeweils unterschiedlich berechnet: – Das Gehalt für Angestellte beträgt 2.000 Euro und erhöht sich um 50 Euro je Überstunde (Attribut der Klasse Angestellter). – Das Gehalt für leitende Angestellte beträgt 3.000 Euro plus Bonus (Attribut der Klasse LeitenderAngestellter). Leitende Angestellte machen keine Überstunden! Schreiben Sie eine Methode, die eine beliebige Anzahl von Person-Objekten als Parameter erhält, für jede Person jeweils Name und Gehalt sowie die Gesamtsumme der Gehälter aller Personen ausgibt.
package ubungsblatt;
abstract class Person {
private String name;
public Person(String name) {
this.name = name;
}
public String getName() {
return name;
}
}
package ubungsblatt;
public class Angestellter extends Person{
private double salary = 2000;
public Angestellter(String name) {
super(name);
setSalary(salary,5);
}
public double getSalary() {
return salary;
}
public void setSalary(double newSalary, int uberStunden) {
salary = salary + (uberStunden *50);
}
public void info()
{
System.out.println("Name: " + getName()+"\n" + "Gehalt: " + getSalary());
}
}
package ubungsblatt;
public class LeitenderAngestellter extends Person {
private double salary = 3000;
public LeitenderAngestellter(String name) {
super(name);
setSalary(salary,500);
}
public double getSalary() {
return salary;
}