P R O F . P A U L O D E T A R S O J R .
PROCEDIMENTOS, FUNÇÕES E MÉTODOS
Atualizado em 08/04/2016
OBJETIVOS
• Ao final desta aula, o aluno deverá:
• Declarar e utilizar procedimentos e funções em JAVA;
• Identificar qual o cenário para utilizar cada um deles;
• Modularizar um programa
2
INTRODUÇÃO
• Para complementar o conceito de algoritmos, iremos estudar três elementos básicos da
programação, que visam facilitar e tornar nossos algoritmos modularizados:
• Procedimentos;
• Funções;
• Métodos.
3
PROCEDIMENTO
• Procedimento: é algo que deve ser feito uma ou várias vezes, sempre que for necessário.
• Pode, ou não, receber parâmetros.
• Não retorna um resultado.
• Exemplos:
• Gravar dados em arquivo no disco;
• Enviar documento para a impressora;
• Ordenar que o computador desligue.
4
PROCEDIMENTO
• Procedimento para imprimir a lista e o elemento passado como parâmetro.
public static void imprimeLista(int[] lista, int maior){
for (int i = 0; i < lista.length; i++) { System.out.print(lista[i] + " ");
}
System.out.println();
System.out.println("O maior valor da lista eh: " + maior);
System.out.println("---");
}
5
FUNÇÕES
• Função: é algo que deve ser feito uma ou várias vezes, sempre que for necessário para se obter um resultado.
• Pode, ou não, receber parâmetros;
• Sempre retorna um resultado;
• Exemplos:
• Mostrar um menu e retornar a opção;
• Solicitar uma entrada ao usuário;
• Efetuar uma operação matemática;
• Ler dados de um arquivo;
6
FUNÇÕES
• Função responsável por retornar o maior elemento da lista passada como parâmetro
public static int recuperaMaior(int[] valores){
int maior = valores[0];
for (int i = 0; i < valores.length; i++) { if(valores[i] > maior){
maior = valores[i];
} }
return maior;
}
7
FUNÇÕES
• Modularização de um programa
• Todas as variáveis declaradas dentro de funções são variáveis locais
• Conhecidas apenas no contexto da função
• Parâmetros
• Informação da comunicação entre funções
• Variáveis locais
8
FUNÇÕES
• Benefícios de Funções
• Divisão para conquista
• Desenvolvimento gerenciável de programas
• Reusabilidade de Software
• Uso de funções existentes como blocos para a construção de novos programas
• Abstração
• Ocultação de detalhes internos (funções da biblioteca)
• Evita a repetição de código
9
FUNÇÕES
• Formato de Definição de uma Função
Tipo_do_valor_de_retorno nome_da_função (lista de parâmetros ) {
declarações e atribuições }
• Nome_da_função
• Qualquer identificador válido
10
FUNÇÕES
• Formato de Definição de uma Função
• Lista_de_Parâmetros Declaração de uma série de parâmetros (= pares tipo identificador)
• Um tipo deve ser listado explicitamente para cada parâmetro.
11
FUNÇÕES
• Formato de Definição de uma Função
Tipo_do_valor_de_retorno nome_da_função (lista de parâmetros )
{
declarações e atribuições }
• Declarações e atribuições Corpo da função (bloco de código)
• Variáveis podem ser declaradas dentro dos blocos (podem ser aninhadas)
• Funções não podem ser definidas dentro de outras funções
12
PARÂMETROS/ARGUMENTOS
• Podem ser utilizados tanto em procedimentos quanto em funções;
• Servem para informar valores de dados que serão necessários para executar a tarefa solicitada;
• System.out.println(“Olá mundo!”);
13
Chamada do Método Parâmetro Fechamento da Chamada
System.out.println( “Olá mundo!” );
PARÂMETROS/ARGUMENTOS
•
Ex.: Calcular descontos percentual em valores de produtos.
• Precisa de quais dados?
• Precisa do valor atual do produto –double;
• Precisa do percentual de desconto –double;
• Resulta em algum novo dado?
• Sim, é uma função! O valor com desconto –double;
public static double
calcDesc(doubleva, doublepc) {
doublevd = va* (pc/ 100);
return
va - vd;
}
14
PARÂMETROS/ARGUMENTOS
• Outras orientações:
• São sub-algoritmos, ou subprogramas;
• Por questões de reaproveitamento de código, evite efetuar entrada/saída de dados dentro dos
procedimentos/funções:
• Passe os dados necessários através de parâmetros;
• Receba resultados pelo retorno;
• Lembre que ao terminar a execução de um procedimento ou função, o seu programa irá continuar a partir do ponto onde havia efetuado a chamada.
15
PARÂMETROS/ARGUMENTOS
• Método: é o mesmo que um procedimento ou uma função, o detalhe é que um método é o nome dado para um destes, quando estamos programando classes, em orientação a objetos.
• Cenas para os próximos capítulos: POO
16
DÚVIDAS
17
REFERÊNCIAS BIBLIOGRÁFICAS
• Claro D. B. e Sobral J. B. M. PROGRAMAÇÃO EM JAVA
• Java - Como Programar - 8ª Ed. 2010
• Disponível em:
http://olimpiada.ic.unicamp.br/extras/cursoC/Cap 06-RepeticaoControle-texto.pdf Acesso em:
12/03/2016
• While. Disponível em:
http://www.tiexpert.net/programacao/java/while.
php Acesso em: 12/03/2016
18
P R O F . P A U L O D E T A R S O J R .
PROCEDIMENTOS, FUNÇÕES E MÉTODOS
Atualizado em 30/03/2016