blob: 71e6d830f8c56fb829e7cd113a1be5af75f23ae1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
|
/* Gehaltsberechnung.java */
import java.util.Date;
abstract class Mitarbeiter
{
int persnr;
String name;
Date eintritt;
public Mitarbeiter()
{
}
public abstract double monatsBrutto();
}
class Arbeiter
extends Mitarbeiter
{
double stundenlohn;
double anzahlstunden;
double ueberstundenzuschlag;
double anzahlueberstunden;
double schichtzulage;
public double monatsBrutto()
{
return stundenlohn*anzahlstunden+
ueberstundenzuschlag*anzahlueberstunden+
schichtzulage;
}
}
class Angestellter
extends Mitarbeiter
{
double grundgehalt;
double ortszuschlag;
double zulage;
public double monatsBrutto()
{
return grundgehalt+
ortszuschlag+
zulage;
}
}
class Manager
extends Mitarbeiter
{
double fixgehalt;
double provision1;
double provision2;
double umsatz1;
double umsatz2;
public double monatsBrutto()
{
return fixgehalt+
umsatz1*provision1/100+
umsatz2*provision2/100;
}
}
public class Gehaltsberechnung
{
private static final int ANZ_MA = 100;
private static Mitarbeiter[] ma;
private static double bruttosumme;
public static void main(String[] args)
{
ma = new Mitarbeiter[ANZ_MA];
//Mitarbeiter-Array f�llen, z.B.
//ma[0] = new Manager();
//ma[1] = new Arbeiter();
//ma[2] = new Angestellter();
//...
//Bruttosumme berechnen
bruttosumme = 0.0;
for (int i=0; i<ma.length; ++i) {
bruttosumme += ma[i].monatsBrutto();
}
System.out.println("Bruttosumme = "+bruttosumme);
}
}
|