1
5 public class Termin {
6
7 private int tag;
10 private int monat;
11 private int jahr;
12
13 private int beginn;
15
16 private int dauer;
18
19 private String beschreibung;
21
22 private Termin folge;
24
25 public void setze(int j, int m, int t, int s, int d, String b) {
28 tag = t;
29 monat = m;
30 jahr = j;
31 beginn = s;
32 dauer = d;
33 beschreibung = b;
34 }
35
36
39 public int ende() {
40 return beginn + dauer;
41 }
42
43
46 public String toString() {
47 return beschreibung + " am "+ tag + "." + monat + "." + jahr + " von " + beginn + " bis " + ende() + " Uhr";
48 }
49
50
53 public boolean kollision(Termin termin2) {
54
55 if ( termin2.tag == tag &&
56 termin2.monat == monat &&
57 termin2.jahr == jahr &&
58 termin2.beginn < ende() && beginn < termin2.ende() )
59 return true;
60 else
61 return false;
62
63 }
64
65
68 public void folgetermin(Termin termin2) {
69
70 folge = termin2;
71
72 }
73
74
77 public static void main(String[] args) {
78
79 Termin termin = new Termin();
80 termin.setze( 2014, 11, 17, 14, 1, "13. Praxisbesprechung" );
82 System.out.println(termin.toString());
83
84 Termin termin2 = new Termin();
85 termin2.setze( 2014, 11, 17, 17, 2, "Fitness Center" );
87 System.out.println( termin2.toString() );
88
89 if (! termin.kollision(termin2) )
90 System.out.print("keine ");
91 System.out.println("Kollision");
92
93 Termin termin3 = new Termin();
94 termin3.setze( 2014, 11, 17, 18, 2, "Kochkurs" );
96 System.out.println( termin3.toString() );
97
98 if (! termin2.kollision(termin3) )
99 System.out.print("keine ");
100 System.out.println("Kollision");
101
102 Termin termin4 = new Termin();
103 termin4.setze( 2014, 11, 20, 14, 1, "14. Praxisbesprechung" );
105
106 termin.folgetermin(termin4);
108
109 Termin termin5 = new Termin();
111 termin5.setze( 2014, 11, 24, 14, 1, "15. Praxisbesprechung" );
113 termin4.folgetermin(termin5);
114
115 for (Termin t = termin; t != null; t = t.folge)
117 System.out.println( t.toString() );
118
119 }
120 }
121