Kamis, 27 Oktober 2016

Clock Display

Kali ini saya akan membahas untuk display jam.

KIta akan membuat 3 class

1. NumberDisplay
     
    Pada class ini berisi fungsi untuk set limit jam, get value, dan syarat-syarat yang dibutuhkan oleh jam.


public class NumberDisplay
{
    private int limit;
    private int value;
   
    public NumberDisplay(int rollOverLimit)
    {
        limit = rollOverLimit;
        value = 0;
    }

    public int getValue()
    {
        return value;
    }
   
    public void setValue(int replacementValue)
    {
        if((replacementValue >= 0) && (replacementValue < limit))
        {
            value = replacementValue;
        }
    }
   
    public String getDisplayValue()
    {
        if(value < 10)
        {
            return "0" + value;
        }
        else
        {
            return "" + value;
        }
    }
   
    public void increment()
    {
        value = (value + 1) % limit;
    }
}


2. ClockDisplay

    Fungsi ini adalah dasar dari clock yang nantinya akan mengatur segala fungsi yang ada di NumberDisplay.

public class ClockDisplay {
   private NumberDisplay hours;
   private NumberDisplay minutes;
   private String displayString;
   
   public ClockDisplay()
   {
       hours = new NumberDisplay(24);
       minutes = new NumberDisplay(60);
       updateDisplay();
   
   }
   
   public ClockDisplay(int hour, int minute)
   {
       hours = new NumberDisplay(24);
       minutes = new NumberDisplay(60);
       setTime(hour, minute);
       
   }
   
   public void timeTick()
   {
       minutes.increment();
       if(minutes.getValue() == 0)
       {
           hours.increment();
           
       }
       updateDisplay();
   }
   
   public void setTime(int hour, int minute)
   {
       hours.setValue(hour);
       minutes.setValue(minute);
       updateDisplay();
   }
   
   public String getTime()
   {
       return displayString;
   }
   
   private void updateDisplay()
   {
       displayString = hours.getDisplayValue() + ":" + minutes.getDisplayValue();
   }
   
}

3. TestClockDisplay
 
     Fungsi ini digunakan untuk tes clock yang kita buat, disini saya akan mencoba dengan jam 12.34

public class TestClockDisplay
{

    public TestClockDisplay()
    {
    }

    public void test()
    {
      
        ClockDisplay clock = new ClockDisplay();
       
        clock.setTime(12,34);
        System.out.println(clock.getTime());
        
        
     
    }
}


Buat relasi sedemikian rupa
















Jalankan dan akan muncul output sebagai berikut



Demikian contoh code untuk ClockDisplay, semoga dapat bermanfaat :) 

Tidak ada komentar:

Posting Komentar