Baixe o app para aproveitar ainda mais
Prévia do material em texto
* * - Sobrecarga (Overloading)- Flávio Ferro Técnicas de Programação 1 * * Tópicos Métodos Sobrecarga de Métodos Exercício Leitura Recomendada * * Métodos Implementam as operações que agem sobre os atributos do objeto São definidos da seguinte forma: <modificador_acesso><tipo_retorno> <nome><parâmetros> * * Sobrecarga de Métodos (overloading) Sobrecarregar um método significa prover mais de uma versão de um mesmo método As versões do método realizam tarefas semelhantes, mas sobre dados diferentes As versões devem, necessariamente, possuir listas de parâmetros diferentes (no tipo ou no número) O tipo do valor de retorno das versões do método pode ser igual String verExtrato (){...}//1º dia do mês atual String verExtrato (int pMes){...}// 1º dia do mês informado String verExtrato (int pMes, int pDia){...}// dia específico do mês informado * * String verExtrato (){...} String verExtrato (int pMes){...} char[] verExtrato (int pMes){...} Sobrecarga de Métodos (overloading) Erro !!! Diferentes tipos de retorno das versões do método não são considerados para sobrecarga * * Sobrecarga de Métodos * * Sobrecarga (Overload) de Métodos public class ContaCorrente{ private String numero; private float saldo; ... public String verExtrato(){ return “Extrato do 1º dia do mês atual”; } public String verExtrato(int pMes){ return “Extrato do 1º dia do mês ” + pMes; } ... } Overload de Métodos class TestaConta{ public static void main(String[] args){ ContaCorrente c1 = new ContaCorrente(); System.out.println(c1.verExtrato()); System.out.println(c1.verExtrato(4)); } } * * Lab5 - Overload de Métodos Estenda a classe ContaCorrente adicionando um atributo limite adicional. Implemente um método para configurar o limite. Este método não recebe parâmetro e configura o limite para R$ 800,00 Realize a sobrecarga do método de configuração de limite, onde este método deve esperar um parâmetro que será gravado no atributo limite. * * Lab5 - Overload de Métodos Na classe TestaContaCorrente crie um objeto do tipo ContaCorrente e em seguida grave valores para o número e saldo. Imprima os dados do objeto criado. Ative o método de configuração do limite para o valor padrão. Imprima o limite adicional. Ative o método de configuração do limite passando como parâmetro um valor do novo limite. Imprima o novo limite adicional. * * Lab6 - Overload de Métodos Criar uma classe chamada Area para calcular a área do quadrado e do retângulo. Criar os métodos calculaArea para realizar o cálculo das respectivas áreas. Para o cálculo da área do quadrado será passado um parâmetro e para o retângulo dois parâmetros. Criar a classe principal TestaArea para realizar a chamada dos métodos e exibir seus respectivos valores. * * Lab7 - Overload de Métodos Implementar uma calculadora simples que some apenas dois valores do mesmo tipo por vez. Na classe calculadora teremos o método calcula que será sobrecarregado com variações de tipos de soma, ou seja, essa classe deve possuir três métodos que somam dois valores do mesmo tipo (int, double e string). Criar a classe TestaCalculadora para executar a calculadora implementada e exibir seus valores. * * class ContaCorrente{ private String numero; private float saldo; ContaCorrente (){}// construtor padrão ContaCorrente(String pNumero, float pSaldo){ this.nome = pNumero; this.saldo = pSaldo; } }} Sobrecarga (Overload) de Construtores class TestaConta{ public static void main(String[] args){ ContaCorrente c1 = new ContaCorrente(); ContaCorrente c2 = new ContaCorrente(“cc01”, 100.0); exibir dados do c1 e c2... } } Overload de construtores * * Lab8 - Overload de Construtores Estenda o Lab7, calculadora simples, de forma a efetuar uma sobrecarga de construtores. Insira na classe calculadora os atributos marca, modelo e uso, todos do tipo string. Crie um construtor para marca e modelo. Crie outro construtor para marca, modelo e uso. Na classe TestaCalculadora crie dois objetos com a classe Calculadora e utilize os construtores criados. Execute e exiba seus valores. * * Pontos Principais Overload permite criar vários métodos com o mesmo nome Os seguintes elementos da assinatura método são considerado para overload: tipo dos parâmetros + número de parâmetros Tipo de retorno não é considerado para overload * * Leitura Recomendada Tutorial Sun: Learning the Java Language Lesson: Object-Oriented Programming Concepts http://java.sun.com/docs/books/tutorial/java/concepts/index.html Lesson: Classes and Objects http://java.sun.com/docs/books/tutorial/java/javaOO/index.html *
Compartilhar