Escolar Documentos
Profissional Documentos
Cultura Documentos
1
Programação Procedural
● Problemas
- Mudanças de requisitos na aplicação
- Mudança de desenvolvedor
- Muitas pessoas responsáveis por colocar o mesmo código em vários lugares
2
Orientação a Objetos
● Benefícios
- Escrever menos código
- Concentrar responsabilidades nos locais certos
- Flexibilizar a aplicação
- Encapsular lógica de negócio
- Polimorfismo(variação do comportamento)
3
Orientação a Objetos
● Benefícios
- Escrever menos código
- Concentrar responsabilidades nos locais certos
- Flexibilizar a aplicação
- Encapsular lógica de negócio
- Polimorfismo(variação do comportamento)
4
Classes: Estruturas de dados
5
Classes e seus Métodos
6
Atributo X Métodos
● Atributos
- Características da classe
- Representados por substantivos
● Métodos
- Operações que a classe é capaz de realizar
- Representados por verbos
7
Classes X Objetos
● A estrutura do Livro a qual nós nos referimos não representa um livro propriamente
dito
● Ela é a apenas a estrutura (classe) usada como modelo para construir os livros
propriamente ditos (objetos)
● Classe e Objetos são conceitos diferentes!
● Classes são usadas para instanciar objetos
8
Classes X Objetos
9
Declarando Classes no Java
● Um arquivo .java pode ter apenas uma classe declarada como pública dentro dele
10
Declarando Métodos e Atributos
11
A notação UML
12
A notação UML: Diagrama de
Classes
13
Assinatura de um Método
14
Sobrecarga de Métodos
● Sobrecarregar um método significa criar outros métodos com o mesmo nome, mas com
assinatura diferente
15
Sobrecarga de Métodos
16
Criando e Manipulando Objetos
● O objeto possui acesso ao que foi definido na sua estrutura(classe) através do “.”
17
Criando e Manipulando Objetos
18
Objetos e referências
● Uma variável cujo o tipo é uma classe não guarda o objeto diretamente
● A variável guarda uma referência ao objeto
● O new aloca uma área de memória e retorno a referência da área de memória alocada
● As variáveis declaradas em métodos são criadas numa área de memória chamada
stack
● Os objetos são criados numa área de memória chamada heap
19
Como funciona a Stack
20
Como funciona o Heap
21
Como funciona o Heap
22
Garbage Collector
23
Garbage Collector
24
O Operador this
25
O Operador this
26