ORIENTA O A OBJETOS
Conceito objetos:Cooperativos
Mundo físico: É um conjunto de objetos que interagem entre si;
OBJETOS:
São instâncias de classes que definem e estruturam, possuem atributos (Informações que fazem parte do objeto) , métodos(Ações que permitem operações sobre o objeto e seus atributos) e modelam entidades do mundo real.
CLASSE: Conjunto de objetos que apresentam características em comum;
ATRIBUTO: Conjunto de características específicas de um objeto;
MÉTODOS:Permitem alterar as características (atibutos) de um objeto;
Objetos se comunicam atravéz de mensagens;
Classe Pessoa
NOME
Privado
Nome:String
Data de Nasc: Data
Peso:real
ATRIBUTOS
Andar
Comer
MÉTODOS
CARACTERÍSTICAS
ABSTRAÇÃO: Habilidade de modelar características do mundo real para o problema que se quer resolver;
ENCAPSULAMENTO: Definição de como implementar atributos e métodos de uma classe. Todas as operações de uma classe só podem ser realizadas dentro de si(Um dado só pode ser visto por seu objeto);
HERANÇA: capacidade de uma classe (Filho) herdar um ou mais atributos e métodos de outra classe (Pai). Permite a reutilização de código.
POLIMORFISMO (Muitas Formas): Capacidade de uma classe possuir várias formas. Uma classe possui uma operação (Método) e suas subclasses (Filhos).
Possuem a mesma operação com outro comportamento.
MOTIVAÇÃO PARA O USO
Independência de implementação;
Ocultamento:Esconde detalhes;
Clareza conceitual;
CLASSE
Descrição de um tipo de objeto;
Conjunto de objetos com características em comum;
Usam atributos (Dados) e métodos (operações);
TIPOS DE CLASSES
1. ABSTRATA: Servem para definir outras classes. Tudo é declarado, mas nada é definido.
CLASSE ABSTRATA ANIMAL
NOME
NOME
PESO
ATRIBUTOS
ANDAR ( ) *VAZIO
COMER ( )
FALAR ( )
MÉTODOS
CLASSE PESSOA
NOME
EMPREGO
ATRIBUTOS
ANDAR ( ) *OBRIGATÓRIO CODIGO
COMER ( )
FALAR ( )
MÉTODOS
2. CONCRETA: Possui todas as definições dos seus métodos, portanto pode ser instanciada.
OBJETOS:
Instâncias de uma classe