Nao entendi bem o que a questa quer.[RESOLVIDO]

Seria perfeitamente que a classe abaixo represente a data/hora internamente com o numero de segundos a partir da meia noite em vez dos tres valores inteiros hour, minute, second. Os clientes poderiam utilizar os mesmo metodos public e obter os mesmos resultados. Modifique a classe abaixo para implmentá-la como o numero de segundos desde a meia noite e mostrar que nao ha alteração visivel para os clientes da classe.

Essa e uma questao do livro do deitel, so que eu nao entendi os que a questao quer dizer. O que seria esse cliente. Vlw.

public class Time2 {
    private int hour;
    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.getHour(), time.getMinute(), time.getSecond());
    }

    public void setTime(int h, int m, int s){
        setHour(h);
        setMinute(m);
        setSecond(s);
    }
    public void setHour(int h){
        hour = ((h >= 0 && h < 24) ? h :0);
    }
    public void setMinute(int m){
        minute = ((m >= 0 && m < 60) ? m : 0);
    }
    public void setSecond(int s){
        second = ((s >= 0 && s < 60) ? s : 0);
    }
   public int getHour(){
        return hour;
    }
   public int getMinute(){
    return minute;
   }
   public int getSecond(){
    return second;
   }

   public String toUniversalString(){

       return String.format("%02d:%02d:%02d", this.getHour(), this.getMinute(), this.getSecond());
   }
   public String toString(){

       return String.format("%d:%02d:%02d %s",((getHour() == 0 || getHour() == 12) ? 12 : getHour() % 12), getMinute(), getSecond(), (getHour() < 12 ? "AM" : "PM"));
   }
}

Um cliente desta classe seria qualquer outra classe que você ou outro programador escreva e que utilize instâncias e/ou métodos desta classe.

Tomando a api padrão do java como exemplo, se você escrever um programa que utiliza a classe, digamos, ArrayList, então a classe que você escreve que utiliza ArrayList é dita cliente da classe ArrayList.

O exercício quer que o estudante entenda que os detalhes de implementação internos de uma classe não devem afetar os clientes dela.