Como já foi abordado em post anterior sobre a declaração de um método, não será reescrito o post. Para visualizar sobre a sintaxe da declaração de um método, o que é um método e exemplos veja este post.
Invocando um método
Após construídos, os métodos podem ser invocados para realizar a tarefa a qual foram escritos. Para invocar um método que está em outra classe, deve-se criar um objeto do tipo da classe que contém o método a ser invocado e apartir deste objeto invocar o método. Quando o método está na mesma classe, basta apenas invocá-lo. Complicado? Nem tanto! Observe o exemplo abaixo (o mesmo do post anterior) para compreender melhor.
Exemplo:
Neste exemplo as classes diferentes são coloridas diferentemente, a vermelha contém apenas o método
multiplica
enquanto a azul possui o método main
e o método multiplica
. O método multiplica
que está na mesma classe do método principal foi destacado de amarelo para melhorar a sua visualização.O resultado da execução deste exemplo seria:
//Operacao.java
public class Operacao {
public void multiplica(int x, int y){
int mult;
mult = x*y;
System.out.println("Multiplicação em outra classe: " + mult);
}
}
//TestaOperacoes.java
public class TestaOperacoes {
static public void multiplica(int x, int y){
int mult;
mult = x*y;
System.out.println("Multiplicação da mesma classe: " + mult);
}
public static void main(String[] args) {
int x = 5;
int y = 7;
//Testa multiplica em Operacao.java
Operacao operacoes = new Operacao();
operacoes.multiplica(x, y);
//Testa multiplica em TestaOperacoes.java
multiplica(x,y);
}
}
Multiplicação em outra classe: 35
Multiplicação da mesma classe: 35
Como pode ser percebido, ao se invocar o método
multiplica
presente em outra classe foi necessário criar um objeto daquela classe para poder invocá-lo no seguinte formato: [objeto].[método]([atributosQuandoExistentes]);Se o método chamado (calling) estiver presente na mesma classe que o método que o invoca (worker) não é necessário criar um objeto daquela classe que os contém. Assim a invocação fica no seguinte formato: [método]([atributosQuandoExistentes]);
Quando um método de trabalho (worker) for declarado como static, independente de sua localização (na mesma classe do método que o chama ou não) a chamada a este método pode ser feita da seguinte forma: [classeAQuePertence].[método]([atributosQuandoExistentes]);
Quando um método é invocado a execução do método de chamada (calling) "para" na linha em que foi feita a chamada ao outro método e retorna somente após a execução do método de trabalho (worker) chamado. métodos worker podem ou não exigir valores a serem entregues quando chamados, esses valores são comumente chamados de parâmetros. Da mesma forma métodos podem ou não retornar valor. Quando um método retorna nenhum valor ele é declarado como
void
. Para melhor entender, observe a figura abaixo.
Nenhum comentário:
Postar um comentário