Pessoal, sou iniciante em programação Java… e não to conseguindo fazer este exercício:
Crie uma classe Tempo com três atributos: horas, minutos e segundos. Crie dois construtores: um para
inicializar os atributos com valor 0 e outro para inicializar os atributos com valores passados como
argumentos. Crie métodos para:
a. Funcionar como getter e setter;
b. Imprimir os atributos no formato hh:mm:ss;
c. Subtrair dois objetos e coloca o resultado no objeto que o chamou;
d. Somar que soma dois objetos e coloca o resultado no objeto que o chamou;
e. Sobrecarregue este último método para que retorne um objeto com o resultado da operação
na verdade não consigo fazer a partir da letra C, o resto já fiz
Posta o que já fez, não temos como adivinhar a forma que você implementou.
Lucas_Manuel
Postarei aqui assim que tiver com ele novamente…
Mas seja educado meu chegado… o fórum é para ajuda e leia novamente a parte que sou iniciante
darlan_machado
Quem está sendo mal educado é você, cara.
O @staroski é das pessoas que mais ajudam, tem um conhecimento incomparável e é extremamente humilde.
Ele não foi desrespeitoso e não fez nenhuma gracinha, exceto pelo emoji ao fim do que ele escreveu.
staroski1 like
Eu tento ser, se pareci mal educado, não foi minha intenção.
Mas de fato, não temos como adivinhar como ficou a estrutura que você implementou.
Sem conhecer sua estrutura, não dá pra orientar a implementar a soma e subtração desses objetos.
publicclassTempo{privateinthoras;privateintminutos;privateintsegundos;publicTempo(){this(0,0,0);}publicTempo(inthoras,intminutos,intsegundos){setHoras(horas);setMinutos(minutos);setSegundos(segundos);}publicintgetHoras(){returnhoras;}publicintgetMinutos(){returnminutos;}publicintgetSegundos(){returnsegundos;}publicvoidsetHoras(inthoras){this.horas=horas;}publicvoidsetMinutos(intminutos){this.minutos=minutos;}publicvoidsetSegundos(intsegundos){this.segundos=segundos;}publicvoidimprimir(){System.out.println(this);}publicTemposubtrair(Tempotempo){returnsegundosParaTempo(this.emSegundos()-tempo.emSegundos());}publicTemposomar(Tempotempo){returnsegundosParaTempo(this.emSegundos()+tempo.emSegundos());}// representação textual deste objeto@OverridepublicStringtoString(){returnString.format("%02d:%02d:%02d",getHoras(),getMinutos(),getSegundos());}// converte este objeto Tempo em um total de segundosprivateintemSegundos(){return(getHoras()*3600)+(getMinutos()*60)+getSegundos();}// converte um total de segundos em um objeto TempoprivatestaticTemposegundosParaTempo(inttotalSegundos){intsegundos=totalSegundos;inthoras=segundos/3600;segundos-=(horas*3600);intminutos=segundos/60;segundos-=(minutos*60);returnnewTempo(horas,minutos,segundos);}}