Implementação Orientada a Objetos – Aula 05 Construtores e sobrecarga de métodos Prof. Danielle Martin Universidade de Mogi das Cruzes 2013-02.

Slides:



Advertisements
Apresentações semelhantes
JAVA Orientação a Objetos
Advertisements

Programação orientada a objetos
Recursividade Inhaúma Neves Ferraz
Programação Orientada a Objetos*
Tratamento de Exceções
Prof. Thiago Pereira Rique
Orientação a Objetos: Modificador Final para Métodos e Classes
Herança, sobrecarga e ligação dinâmica zHerança zReferência super zSobrecarga de métodos zSobreposição zLigação dinâmica de métodos zfinal.
De 17 1 Linguagens de Programação Orientadas a Objetos Pós-Gradução(Lato-Sensu) em Sistemas de Banco de Dados - UFPa Marco Fagundes Aula.
Generalização, Especialização e Conceitos
Iniciação ao Java – Márcio F. Campos
Programação Básica em Java
Polimorfismo e Acoplamento Dinâmico
Polimorfismo e Classes Abstratas Profa
Wagner Santos C. de Jesus
Membros estáticos.
Capítulo 8 Construtores. 2 Capítulo 8 – Construtores Construtores Método Construtor Múltiplos métodos construtores Array de objetos.
Orientação a Objetos Classes
Capítulo 9 Herança 1.
Capítulo 8 Construtores. 2 Capítulo 8 – Construtores Construtores Método Construtor Múltiplos métodos construtores Array de objetos.
Classes e objetos Arrays e Sobrecarga
Classes e objetos P. O. O. Prof. Grace.
Estrutura de Dados em Java
Paradigmas de Linguagens de Programação Paradima da Programação Orientada à Objetos Professor: Armando Hage Belém-2008.
CRIANDO OBJETOS EM JAVA
Concorrência em Java Threads em Java.
Tipos Agregados Homogêneos e Listas
Programação Orientada a Objetos com Java
JAVA Orientação a Objetos
JAVA Linguagem Ambiente de Desenvolvimento
Introdução a Java: Classes, métodos e variáveis Eduardo Figueiredo 24 de Março de 2010 POOAula 05.
Interfaces.
Atributos, Encapsulamento e Interface em Java
Programação I Aula 2 (Métodos)
Classes, Objetos, Atributos e Métodos JAVA
Orientação a Objetos e Java Graduação em Ciência da Computação
UTFPR – Campus Curitiba - DAELN Cursos de Eng. Eletrônica/Eng. da Computação IF62C - Fundamentos de Programação Semana 12 – Overloading X Overriding Prof.a.
Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos I Professora: Cheli Mendes Costa This.
POO - I Prof.: Jean Carlo Mendes
Wagner Santos C. de Jesus
Orientação a Objetos Parte II
Programação Orientada a Objetos - Java
Implementação Orientada a Objetos – Aula 03
Programação Orientada a Objetos - Java Professor: Jean Carlo Mendes.
Programação Orientada a Objetos - Java
Orientação a Objetos usando Java
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Java Kickstart, day 2 Semelhanças com linguagem C.
Aula Prática 4 Monitoria IP/CC (~if669).
Prof.: Bruno Rafael de Oliveira Rodrigues. Construtor é bloco declarado que é chamado no momento em que o Objeto é criado (instanciado). Todas as classes.
Polimorfismo.
Orientação a Objetos e Java Graduação em Ciência da Computação  Centro de Informática, UFPE Alexandre Mota
Classes Abstratas e Interface
Programação II Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São Leopoldo -
M ÉTODOS DA C LASSE S TRING. FUNÇÕES COM STRING Uma string é um tipo texto que corresponde à união de um conjunto de caracteres. Em Java, as strings são.
Implementação Orientada a Objetos – Aula 06 Conversão de tipos e métodos estáticos Prof. Danielle Martin Universidade de Mogi das Cruzes
Aula Prática 5 05/05/2010. //Estrutura do método public int subtrair (int a, int b){ //Calcule a operação desejada. int resultado = a – b; //Retorne o.
Certificação Marco Antonio. Introdução A compreensão desse capítulo é muito importante pois trata de um assunto essencial em qualquer linguagem de programação,
Programação II Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São Leopoldo -
Herança Modelagem e Programação Orientada a Objetos
Construtores e Destrutores
Copyright 1998, Departamento de Informática da UFPE. Todos os direitos reservados sob a legislação em vigor. Variáveis e métodos estáticos, Passagem de.
Copyright 2000, Departamento de Informática, UFPE. Todos os direitos reservados sob a legislação em vigor. Orientação a Objetos e Java.
Programação II Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São Leopoldo -
Implementação Orientada a Objetos – Aula 09 Pacotes Prof. Danielle Martin Universidade de Mogi das Cruzes
Implementação Orientada a Objetos – Aula 03 Atributos e Encapsulamento Prof. Danielle Martin/ Marcia Bissaco Universidade de Mogi das Cruzes
Implementação Orientada a Objetos – Aula 08 Herança, sobrescrita de métodos e polimorfismo Prof. Danielle Martin Universidade de Mogi das Cruzes
Implementação Orientada a Objetos – Aula 07 Agregação e composição de objetos Prof. Danielle Martin Universidade de Mogi das Cruzes
Implementação Orientada a Objetos – Aula 04 Métodos, parâmetros e retorno Prof. Danielle Martin/Marcia Bissaco Universidade de Mogi das Cruzes
Laboratório de Computação Aula 06 e 07 – Implementação de classes Prof. Fábio Dias
Transcrição da apresentação:

Implementação Orientada a Objetos – Aula 05 Construtores e sobrecarga de métodos Prof. Danielle Martin Universidade de Mogi das Cruzes

Método Construtor Método construtor é o bloco de instruções executados no momento da criação da instância. Acionados pela cláusula new. Toda classe possui um construtor. Se o programador não declarar um construtor explícito, o compilador cria um construtor padrão (em branco e sem parâmetros).

Método Construtor Métodos construtores têm o nome idêntico ao da classe. Construtores não retornam valor. Não deve ser declarado tipo de retorno algum, nem mesmo void. Não pode ser chamado isoladamente, apenas na criação de objetos. Também não podem ser chamados recursivamente. Porém, construtores da mesma classe podem chamar uns aos outros, usando a cláusula this (deve ser a primeira instrução do método).

Exemplo de método construtor public class Carro { private String placa; public Carro(){ System.out.println(“O objeto foi criado!“); } public String getPlaca(){ return placa; } public void setPlaca(String placa){ this.placa = placa; } public class Aplicacao { public static void main(String[] args) { Carro meuCarro; System.out.println(“O objeto ainda não existe“); meuCarro = new Carro(); System.out.println(“Depois da criação do objeto“); } Imprime: O objeto ainda não foi existe O objeto foi criado! Depois da criação do objeto

Exemplo de método construtor public class Carro { private String placa; public Carro(String placa){ this.placa = placa; } public String getPlaca(){ return placa; } public void setPlaca(String placa){ this.placa = placa; } public class Aplicacao { public static void main(String[] args) { Carro meuCarro; meuCarro = new Carro(“ABC-123”); System.out.println(“A placa do carro é “ + meuCarro.getPlaca()); } Imprime: A placa do carro é ABC-123 Construtores podem ser personalizados para iniciar valores do objeto ou executar sub rotinas de inicialização

Sobrecarga de métodos Em java, é possível ter mais de um método com o mesmo nome na mesma classe?

Sobrecarga de métodos Em java, é possível ter mais de um método com o mesmo nome na mesma classe? Resposta: SIM Contanto que os parâmetros dos métodos sejam DIFERENTES A isto, damos o nome de sobrecarga de métodos

Exemplos de sobrecarga public class Conta { private int numero; private double saldo; public Conta(){ } public Conta(int numero){ this.numero = numero; this.saldo = 0; } public Conta(int numero, double saldo){ this.numero = numero; this.saldo = saldo; } public void saque(double valorSaque){ saldo -= valorSaque; } public void saque(double valorSaque, double taxa){ saldo -= valorSaque - taxa; } Sobrecarga de construtores Sobrecarga de métodos

Exemplos de sobrecarga public class Conta { private int numero; private double saldo; public Conta(){ } public Conta(int numero){ this.numero = numero; this.saldo = 0; } public Conta(int numero, double saldo){ this.numero = numero; this.saldo = saldo; } public void saque(double valorSaque){ saldo -= valorSaque; } public void saque(double valorSaque, double taxa){ saldo -= valorSaque - taxa; } public void setSaldo(double saldo) { this.saldo = saldo; } public double getSaldo() { return saldo; } public class AplicacaoBancaria { public static void main(String[] args) { Conta minhaConta; minhaConta = new Conta(123); Conta outraConta; outraConta = new Conta(123, 500); minhaConta.setSaldo(100); minhaConta.saque(50); outraConta.saque(90,10); System.out.println(minhaConta.getSaldo()); System.out.println(outraConta.getSaldo()); }

Exemplos de sobrecarga public class Conta { private int numero; private double saldo; public Conta(){ } public Conta(int numero){ this.numero = numero; this.saldo = 0; } public Conta(int numero, double saldo){ this.numero = numero; this.saldo = saldo; } public void saque(double valorSaque){ saldo -= valorSaque; } public void saque(double valorSaque, double taxa){ saldo -= valorSaque - taxa; } public void setSaldo(double saldo) { this.saldo = saldo; } public double getSaldo() { return saldo; } public class AplicacaoBancaria { public static void main(String[] args) { Conta minhaConta; minhaConta = new Conta(123); Conta outraConta; outraConta = new Conta(123, 500); minhaConta.setSaldo(100); minhaConta.saque(50); outraConta.saque(90,10); System.out.println(minhaConta.getSaldo()); System.out.println(outraConta.getSaldo()); }

Exemplos de sobrecarga public class Conta { private int numero; private double saldo; public Conta(){ } public Conta(int numero){ this(numero, 0); } public Conta(int numero, double saldo){ this.numero = numero; this.saldo = saldo; } public void saque(double valorSaque){ saldo -= valorSaque; } public void saque(double valorSaque, double taxa){ saldo -= valorSaque + taxa; } public void setSaldo(double saldo) { this.saldo = saldo; } public double getSaldo() { return saldo; } public class AplicacaoBancaria { public static void main(String[] args) { Conta minhaConta; minhaConta = new Conta(123); Conta outraConta; outraConta = new Conta(123, 500); minhaConta.setSaldo(100); minhaConta.saque(50); outraConta.saque(90,10); System.out.println(minhaConta.getSaldo()); System.out.println(outraConta.getSaldo()); }