Programação Orientada a Objetos em Java - Criação de Objetos

6,616 views
6,360 views

Published on

Criação de objetos

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
6,616
On SlideShare
0
From Embeds
0
Number of Embeds
1,501
Actions
Shares
0
Downloads
88
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Programação Orientada a Objetos em Java - Criação de Objetos

  1. 1. Programação Orientada a Objetos
  2. 2. Este sou eu :) @omadson Desenvolvedor WEB ++ Soluções em Tecnologia CENTEChttp://omadson.wordpress.com
  3. 3. O que eu preciso Saber?● Conceitos gerais de programação● Tipos primitivos, entrada e saída de dados, operadores● Estruturas condicionais e de repetição● Introdução a orientação a objetos(objeto, classe, atributo e método)● Hoje: Criação de objetos
  4. 4. Criação de objetos● String é uma classe e as variáveis do tipo string armazenam referências para objetos String. Como criamos um objeto?
  5. 5. Antes de criar objetos...● Precisamos criar um método especial nas classes que será responsável por inicializar os atributos dos objetos que criaremos● Estes métodos especiais são chamados de construtores
  6. 6. Construtores● Além de métodos e atributos, o corpo de uma classe pode conter: Construtores● Definindo como os atributos de um objeto são inicializados public <nome_da_classe>(<parâmetros>) { <corpo_do_construtor> }
  7. 7. Construtor default● Um construtor sem parâmetros public Conta() { this.saldo   = 0; this.cliente = null; }● Caso não seja definido um construtor, um construtor implícito dafault é fornecido inicializando seus atributos com seus valores default
  8. 8. Valores default para atributos● 0 para int, double, float, long, short, etc.● false para boolean● null para tipos referência null denota uma referência nula, nãoexistente, para um objeto de qualquer tipo
  9. 9. Criação de objetos● Um objeto é criado através do operador new Cliente c c = new Cliente(“Madson Dias“, “12345678900“, “Rua A“);new <nome_da_classe>(<argumentos>)
  10. 10. Exercício● Crie uma classe Curso com código e nome.● Crie uma classe Aluno, contendo nome, cpf, idade e Curso que o aluno faz.● Lembre-se de criar um construtor bem como os métodos get e set para as classes.
  11. 11. Métodos (boas práticas)● Crie métodos para: ● Encapsular complexidade e tornar o código mais legível ● Evitar código duplicado. Exemplo: o que é mais interessante? – Promover reutilização de código – Isolar operações e estruturas de dados complexos
  12. 12. Métodos (boas práticas)● Métodos devem ter forte coesão: tudo dentro de um método deve ser relacionado ao seu propósito central. Se há dois propósitos, deve haver dois métodos. ● Por exemplo, o método creditar não deveria imprimir o novo saldo da conta.
  13. 13. Métodos (boas práticas)● Acoplamento é um termo usado para descrever quão dependente um método é de outro(s).● O ideal é ter fraco acoplamento.● Existe uma grande disputa sobre qual é o tamanho ideal para métodos: ● Uma única página ● Pequenos métodos = menos legibilidade ● Métodos longos bons = unicidade lógica
  14. 14. Mútiplos construtores● Objetos da classe Conta podem ser inicializados de duas formas: public class Conta { private Cliente cliente; private double saldo; public Conta(Cliente c, double s) { this.cliente = c; this.saldo   = s; } Chama public Conta(Cliente c) { outro this(c, 0.0); construtor }... da classe }
  15. 15. Métodos Overloading● Métodos com o mesmo nome e diferentes listas de argumentos● Da mesma forma que os dois construtores de conta.
  16. 16. Variáveis e métodos estáticos● Até aqui as variáveis e os métodos de instância: ● Para acessar o atributo (variável de instância) ou chamar um método é preciso ter um objeto ● Cada objeto tem seu atributo
  17. 17. Variáveis e métodos estáticos● Variáveis e métodos estáticos são da classe ● Todos os métodos compartilham uma mesma variável estática ● Acesso através do nome da classe que os contém ● Exemplo: classe para conversão de valores.
  18. 18. Variáveis e métodos estáticos● O método main é estático ● Por onde se inicia a execução ● A execução não inicia de um objeto, mas da classe que contém o main● Métodos estáticos só acessam variáveis e outros métodos estáticos ● Atributos e métodos de instância apenas através de objetos, como qualquer outro.
  19. 19. Exercício● Modele um funcionário. Ele deve ter o nome do funcionário, o departamento onde trabalha, seu salário (double), a data de entrada no banco (String) e seu RG (String).● Você deve criar alguns métodos de acordo com sua necessidade. Além deles, crie um método bonifica que aumenta o salario do funcionário de acordo com o parâmetro passado como argumento.
  20. 20. Exercício● Crie também um método calculaGanhoAnual, que não recebe parâmetro algum, devolvendo o valor do salário multiplicado por 12..● A ideia aqui é apenas modelar, isto é, só identifique que informações são importantes e o que um funcionário faz. Desenhe no papel tudo o que um Funcionario tem e tudo que ele faz.
  21. 21. Muito a aprender você ainda tem.

×