1
6 public class AikaSekE implements AikaRajapinta {
7
8 private AikaE hm = new AikaE();
9 private int s;
10
11
17 public void aseta(int h,int m, int s) {
18 hm.aseta(h,m); this.s = s; lisaa(0,0);
19 }
20
21 public void aseta(int h,int m) { aseta(h,m,0); }
22 public void aseta(int h) { aseta(h,0); }
23
24 public AikaSekE() { aseta(0,0,0); }
25
26
32 public AikaSekE(int h,int m, int s) { aseta(h,m,s);
34 }
35
36 public AikaSekE(int h,int m) { aseta(h,m,0); }
37 public AikaSekE(int h) { aseta(h,0,0); }
38
39
43 public void tulosta(boolean lf) {
44 hm.tulosta(false);
45 System.out.print(":" + (s<10?"0":"")+s);
46 if ( lf ) System.out.println();
47 }
48
49
52 public void tulosta() {
53 tulosta(true);
54 }
55
56
61 public void lisaa(int lisa_min,int lisa_sek) {
62 s += lisa_sek;
63 hm.lisaa(lisa_min+s/60);
64 s %= 60;
65 }
66
67 public void lisaa(int lisa_min) { lisaa(lisa_min,0); }
68
69 public int getH() { return hm.getH(); }
70 public int getM() { return hm.getM(); }
71
72 public static void main(String[] args) {
73 AikaE a1 = new AikaE();
74 AikaE a2 = new AikaE(13);
75 AikaE a3 = new AikaE(14,175);
76
77 a1.tulosta(); a2.tulosta(); a3.tulosta();
78 a1.aseta(12,15); a2.aseta(16,-15);
79 a1.tulosta(); a2.tulosta();
80
81 AikaSekE a4 = new AikaSekE(14,55,45); a4.tulosta();
82 a4.lisaa(3,30); a4.tulosta();
83
84 AikaRajapinta ajat[] = new AikaRajapinta[5];
86 ajat[0] = a1; ajat[1] = a2; ajat[2] = a3; ajat[3] = a4;
87 ajat[4] = new AikaSekE(23,59,59);
88
89 for (int i=0; i < ajat.length; i++ ) {
90 ajat[i].tulosta(false); System.out.print(" +" + i + " => ");
91 ajat[i].lisaa(i); ajat[i].tulosta();
92 }
93
94 }
95
96 }
97
98