public class NumberDisplay { private int limit; private int value; /** * Konstruktor objek dari class NumberDisplay */ public NumberDisplay (int rollOverLimit) { limit = rollOverLimit; value = 0; } /** * Return nilai saat ini. */ public int getValue() { return value; } /** * Atur nilai display menjadi nilai tertentu * Jika nilai baru kurang dari nol atau melebihi limit, * jangan lakukan apa-apa. */ public void setValue (int replacementValue) { if ((replacementValue >= 0) && (replacementValue < limit)) { value = replacementValue; } } /** * Return nilai display (jika nilai return berupa string dua-digit. * Jika nilai kurang dari sepuluh, * akan dirapikan dengan awalan angka nol. */ public String getDisplayValue() { if (value < 10) { return "0" + value; } else { return "" + value; } } /** * Naikkan nilai angka sebanyak satu, kembali ke nol * jika limit tercapai. */ public void increment() { value = (value + 1) % limit; } }