/**
* Write a description of class Time2 here.
*
* @author (Muhammad Bagus Istighfar)
* @version (14.10.20)
*/
public class Time2
{
private int hours;
private int minute;
private int second;
public Time2()
{
this (0,0,0);
}
public Time2( int h)
{
this (h,0,0);
}
public Time2(int h,int m)
{
this(h,m,0);
}
public Time2(int h, int m, int s)
{
setTime (h,m,s);
}
public Time2( Time2 time)
{
this (time.getHours(), time.getMinute(),
time.getSecond());
}
public void setTime (int h, int m, int s)
{
setJam ( h ) ;
setMenit( m );
setDetik( s );
}
public void setJam (int h)
{
if (h>= 0 && h<24)
{
hours=h;
}
else
{
throw new IllegalArgumentException(
"hour must be 0-23");
}
}
public void setMenit (int m)
{
if (m>= 0 && m<60)
{
minute=m;
}
else
{
throw new IllegalArgumentException(
"minute must be 0-59");
}
}
public void setDetik (int s)
{
if (s>= 0 && s<60)
{
second=(( s>=0 && s<60) ? s:0);
}
else
{
throw new IllegalArgumentException(
"second must be 0-59");
}
}
public int getHours()
{
return hours;
}
public int getMinute()
{
return minute;
}
public int getSecond()
{
return second;
}
public String toString()
{
return String.format( "%d:%02d:%02d %s",
((getHours()==0||getHours()==12)?12:getHours()%12),
getMinute(), getSecond(), (getHours()<12? "AM" :"PM"
));
}
public String toUniversalString()
{
return String.format("%02d:%02d:%02d",
getHours(), getMinute(), getSecond());
}
}