| Aika4.java |
1 /**
2 * Sisäinen tilanvalvonta aikaan.
3 * @author Vesa Lappalainen
4 * @version 1.0, 01.02.2003
5 */
6 public class Aika4 {
7
8 private int h=0, m=0;
9
10 /**
11 * Asettaa uuden ajan ja pitää huolen että aika on aina oikeaa muotoa.
12 * @param h asetettavat tunnit
13 * @param m asetettavat minuutit
14 */
15 public void aseta(int h,int m) {
16 this.h = h; this.m = m; lisaa(0);
17 }
18
19 public Aika4() { // Oletusmuodostaja
20 aseta(0,0);
21 }
22
23 /**
24 * Asettaa uuden ajan ja pitää huolen että aika on aina oikeaa muotoa.
25 * @param h asetettavat tunnit
26 */
27 public Aika4(int h) {
28 aseta(h,0);
29 }
30
31 /**
32 * Alustaa ajan
33 * @param h tunnit
34 * @param m minuutit
35 */
36 public Aika4(int h,int m) { // Muodostaja
37 aseta(h,m);
38 }
39
40 /**
41 * Tulostaa ajan muodossa 15:05
42 */
43 public void tulosta() {
44 System.out.println("" + h + ":" + (m<10?"0":"")+m);
45 }
46
47 /**
48 * Lisää aikaan valitun minuuttimäärän
49 * @param lisa_min lisättävä minuuttimäärä
50 */
51 public void lisaa(int lisa_min) {
52 int yht_min = h * 60 + m + lisa_min;
53 h = yht_min / 60;
54 m = yht_min % 60;
55 }
56
57 public static void main(String[] args) {
58 Aika4 a1 = new Aika4();
59 Aika4 a2 = new Aika4(13);
60 Aika4 a3 = new Aika4(14,25);
61
62 a1.tulosta(); a2.tulosta(); a3.tulosta();
63 a1.aseta(12,15); a2.aseta(16,-15);
64 a1.tulosta(); a2.tulosta();
65 }
66
67 }
68
69 | Aika4.java |