Programação orientada a objetos e o Java (parte 4)
No artigo anterior vimos que os atributos permitem armazenar dados aos objetos. Agora veremos os métodos ou funções-membro, analisando a utilização de parâmetros e a possibilidade de um método devolver valor de retorno.
Parte 4: Valor de retorno
Depois que métodos praticam uma ação, eles podem enviar uma mensagem
que seria o valor de retorno, que iremos tratar agora.
Outra questão é o retorno de valor pelo método, caso não seja armazenado em uma variável ou utilizado como parte de uma expressão, ele será perdido e não implicará em mensagens de erros no compilador. Devemos usar a seguinte sintaxe:
variavel = nomeDoObjeto.nomeDoMetodo(parametros);
A definição de valor de retorno é simples. Vamos entender como funciona na prática desenvolvendo uma classe que use este recurso. Simulando o funcionamento de aumento de potência de um aparelho de ar-condicionado:
Outra questão é o retorno de valor pelo método, caso não seja armazenado em uma variável ou utilizado como parte de uma expressão, ele será perdido e não implicará em mensagens de erros no compilador. Devemos usar a seguinte sintaxe:
variavel = nomeDoObjeto.nomeDoMetodo(parametros);
A definição de valor de retorno é simples. Vamos entender como funciona na prática desenvolvendo uma classe que use este recurso. Simulando o funcionamento de aumento de potência de um aparelho de ar-condicionado:
// Arcondicionado.java
public class Arcondicionado {
// atributos
protected int opcao;
// métodos
public void trocarTemp(int op) {
// verifica se a opção informada é valida
if(op >= 0 && op <= 3) {
opcao = op;
}
}
public int obterTemp() {
return opcao;
}
}
public class Arcondicionado {
// atributos
protected int opcao;
// métodos
public void trocarTemp(int op) {
// verifica se a opção informada é valida
if(op >= 0 && op <= 3) {
opcao = op;
}
}
public int obterTemp() {
return opcao;
}
}
A variável "opcao" foi definida como protegido de forma que pode ser utilizada por classes com base na classe Arcondicionado. Iremos tratar disso mais a frente. Podemos observar ainda que criamos um método no final responsável por passar o valor atual da potência que está estabelecida no aparelho.
Agora vamos fazer a utilização desta classe brincando com as opções disponíveis no aparelho, aumentando e diminuindo a temperatura, obtendo a nova opção sempre que isso aconteça:
// usaAr.java
public class usaAr {
public static void main(String args[]) {
Arcondicionado arno = new Arcondicionado();
System.out.println("Ar:\nTemperatura Inicial = " +
arno.obterTemp());
System.out.println("Aumentando potencia...");
for(int op=1; op<=4; op++) {
arno.trocarTemp(op);
System.out.println("tentativa #"+op+":Temp.Atual = " +
arno.obterTemp());
}
System.out.println("Diminuindo potencia...");
for(int op=3; op>=0; op--) {
arno.trocarTemp(op);
System.out.println("tentativa #"+(op+1)+":Temp.Atual = " +
arno.obterTemp());
}
}
}
public class usaAr {
public static void main(String args[]) {
Arcondicionado arno = new Arcondicionado();
System.out.println("Ar:\nTemperatura Inicial = " +
arno.obterTemp());
System.out.println("Aumentando potencia...");
for(int op=1; op<=4; op++) {
arno.trocarTemp(op);
System.out.println("tentativa #"+op+":Temp.Atual = " +
arno.obterTemp());
}
System.out.println("Diminuindo potencia...");
for(int op=3; op>=0; op--) {
arno.trocarTemp(op);
System.out.println("tentativa #"+(op+1)+":Temp.Atual = " +
arno.obterTemp());
}
}
}
Para testar este programa será necessário salvar no mesmo diretório as classes exatamente com os nomes determinados no código. O Java utiliza isso para sua melhor organização. Acima foi citada a fonte onde você pode baixar a máquina Java e um compilador que vem com o pacote, utilizei o JCreator Pro 2.0*.