Cada método define
atualiza os atributos por sua conta:
In [1]:
public class Horario {
private int hora, minuto, segundo;
public void define() {
this.hora = 0;
this.minuto = 0;
this.segundo = 0;
}
public void define(int hora, int minuto, int segundo) {
this.hora = hora;
this.minuto = minuto;
this.segundo = segundo;
}
public void define(String horario) {
this.hora = Integer.parseInt(horario.substring(0,2));
this.minuto = Integer.parseInt(horario.substring(3,5));
this.segundo = Integer.parseInt(horario.substring(6));
}
public void tick() {
segundo++;
if (segundo == 60) {
minuto++;
segundo = 0;
}
if (minuto == 60) {
hora++;
minuto = 0;
}
if (hora == 24) {
hora = 0;
minuto = 0;
segundo = 0;
}
}
public String toString() {
return hora + ":" + minuto + ":" + segundo;
}
}
Out[1]:
In [2]:
Horario h1 = new Horario(),
h2 = new Horario(),
h3 = new Horario();
h1.define();
h2.define(10, 15, 59);
h3.define("07:53:02");
h1.tick();
h2.tick();
h3.tick();
System.out.println("Horario 1: " + h1);
System.out.println("Horario 2: " + h2);
System.out.println("Horario 3: " + h3);
Out[2]:
In [3]:
public class Horario {
private int hora, minuto, segundo;
public void define() {
this.define(0, 0, 0);
}
public void define(int hora, int minuto, int segundo) {
this.hora = hora;
this.minuto = minuto;
this.segundo = segundo;
}
public void define(String horario) {
this.define(Integer.parseInt(horario.substring(0,2)),
Integer.parseInt(horario.substring(3,5)),
Integer.parseInt(horario.substring(6)));
}
public void tick() {
segundo++;
if (segundo == 60) {
minuto++;
segundo = 0;
}
if (minuto == 60) {
hora++;
minuto = 0;
}
if (hora == 24) {
hora = 0;
minuto = 0;
segundo = 0;
}
}
public String toString() {
return hora + ":" + minuto + ":" + segundo;
}
}
Out[3]:
In [4]:
Horario h1 = new Horario(),
h2 = new Horario(),
h3 = new Horario();
h1.define();
h2.define(10, 15, 59);
h3.define("07:53:02");
h1.tick();
h2.tick();
h3.tick();
System.out.println("Horario 1: " + h1);
System.out.println("Horario 2: " + h2);
System.out.println("Horario 3: " + h3);
Out[4]:
In [ ]:
In [5]:
public class Horario {
private int hora, minuto, segundo;
public Horario() {
this.hora = 0;
this.minuto = 0;
this.segundo = 0;
}
public Horario(int hora, int minuto, int segundo) {
this.hora = hora;
this.minuto = minuto;
this.segundo = segundo;
}
public Horario(String horario) {
this.hora = Integer.parseInt(horario.substring(0,2));
this.minuto = Integer.parseInt(horario.substring(3,5));
this.segundo = Integer.parseInt(horario.substring(6));
}
public void tick() {
segundo++;
if (segundo == 60) {
minuto++;
segundo = 0;
}
if (minuto == 60) {
hora++;
minuto = 0;
}
if (hora == 24) {
hora = 0;
minuto = 0;
segundo = 0;
}
}
public String toString() {
return hora + ":" + minuto + ":" + segundo;
}
}
Out[5]:
In [6]:
Horario h1 = new Horario(),
h2 = new Horario(10, 15, 59),
h3 = new Horario("07:53:02");
h1.tick();
h2.tick();
h3.tick();
System.out.println("Horario 1: " + h1);
System.out.println("Horario 2: " + h2);
System.out.println("Horario 3: " + h3);
Out[6]:
In [7]:
public class Horario {
private int hora, minuto, segundo;
public Horario() {
this(0, 0, 0);
}
public Horario(int hora, int minuto, int segundo) {
this.hora = hora;
this.minuto = minuto;
this.segundo = segundo;
}
public Horario(String horario) {
this(Integer.parseInt(horario.substring(0,2)),
Integer.parseInt(horario.substring(3,5)),
Integer.parseInt(horario.substring(6)));
}
public void tick() {
segundo++;
if (segundo == 60) {
minuto++;
segundo = 0;
}
if (minuto == 60) {
hora++;
minuto = 0;
}
if (hora == 24) {
hora = 0;
minuto = 0;
segundo = 0;
}
}
public String toString() {
return hora + ":" + minuto + ":" + segundo;
}
}
Out[7]:
In [8]:
Horario h1 = new Horario(),
h2 = new Horario(10, 15, 59),
h3 = new Horario("07:53:02");
h1.tick();
h2.tick();
h3.tick();
System.out.println("Horario 1: " + h1);
System.out.println("Horario 2: " + h2);
System.out.println("Horario 3: " + h3);
Out[8]:
Circulo
Dada a classe Circulo
apresentada anteriormente (versão sem construtor), escreva dois métodos define
sobrecarregados que inicializem centroX
, centroY
e raio
.
Adapte a tarefa anterior de modo que a inicialização de centroX
, centroY
e raio
possa ser feita por dois construtores sobrecarregados.
In [ ]: