Senac OO - 1) Intro

15
Orientação a Objetos e Java MSc. Luiz Barboza [email protected]

Transcript of Senac OO - 1) Intro

Page 1: Senac OO - 1) Intro

Orientação a Objetos e Java

MSc. Luiz Barboza

[email protected]

Page 2: Senac OO - 1) Intro

Programação Orientada a Objetos

Foco nos dados (objetos) do sistema, não nas funções

Estruturação do programa é baseada nos dados, não nas funções

As funções mudam mais do que os dados

Page 3: Senac OO - 1) Intro

Um Objeto…

Um objeto é uma entidade com limites bem definidos com uma identidade que encapsula um estado e um comportamento.

Objeto

Nome: J ClarkFuncional: 567138Nascimento: 07/25/1961Disciplina: Matematica

Page 4: Senac OO - 1) Intro

Um Objeto tem Estado O estado de um objeto é uma das possíveis condições

sob a qual o objeto pode estar O estado é composto pelos valores internos do objeto e

suas relações com outros objetos.

Nome: J ClarkFuncional: 567138Nascimento: 07/25/1961Disciplina: Matemática

Professora Clark

Nome: J ClarkFuncional: 567138Nascimento: 07/25/1961Disciplina: Matematica

Page 5: Senac OO - 1) Intro

Um Objeto tem Comportamento

O comportamento determina como um objeto reage interage com o mundo externo

Esta interação é feita a através de troca de mensagens

Comportamento da Professora ClarkOrientar AlunosMinistrar AulaLançar NotasPreparar Prova

Orie

ntarA

lunos(

)

PrepararProva()

LançarNotas()

Professora Clark

MinistrarAula()

Page 6: Senac OO - 1) Intro

Um Objeto tem Identidade

Cada objeto tem um identidade única, mesmo que seu estado seja idêntico ao de outro objeto.

Professor “J Clark” ensina Biologia

Professor “J Clark” ensina Biologia

Page 7: Senac OO - 1) Intro

E uma Classe…

Uma classe a descrição de um conjunto de objetos que compartilham os mesmos atributos, operações, relacionamentos e semântica. Um objeto é uma instância de uma classe

Page 8: Senac OO - 1) Intro

Uma Classe tem Atributos

Um atributo é uma propriedade identificada que especifica um conjunto de valores possíveis a ser atribuído por cada objeto da classe.

Atributos

Estudante

- nome- endereço- identidade- nascimento

Page 9: Senac OO - 1) Intro

Um Classe tem Operações Operações especifica as mensagens que podem

ser enviadas aos objetos Tem uma assinatura que determina os parâmetros

de entrada e saída.

Operações

Student

+ atenderAula()+ realizarProva()+ estudar()

Page 10: Senac OO - 1) Intro

Princípios da Orientação à Objetos

Orientação à Objetos

Enca

psul

amen

to

Abs

traç

ão

Hie

rarq

uia

Mod

ular

idad

e

Page 11: Senac OO - 1) Intro

Abstração

Representação simplificada de uma entidade real

record Pessoa nome : string; dataNasc : integer;end

procedure idade begin .....

nome

dataNasc idade

29/1/74João =9&%2!1abstraçãoformalização

Page 12: Senac OO - 1) Intro

Encapsulamento

Esconde a implementação dos clientes

Orie

ntarA

lunos(

)

PrepararProva()

LançarNotas()

MinistrarAula()

Nome: J ClarkFuncional: 567138Nascimento: 07/25/1961Disciplina: Matematica

DeterninarDisciplina(Inglês)

Det

erni

narD

isci

plin

a()

Page 13: Senac OO - 1) Intro

Modularidade?

Quebra algo complexo em partes menores mais simples mais especializadas

Melhora a extensibilidade e manutenabilidade

Page 14: Senac OO - 1) Intro

Hierarquia

Especialização

Generalização

Poupança

ContaBancaria

ContaCorrentePoupança

CobrarMensalidade()

Define uma relação de Herança entre classes A herenca caracteriza a Generalização

de e Especialização Fundamenta o Polimorfismo

Polimorfismo

Page 15: Senac OO - 1) Intro

Orientação a Objetos e Java

MSc. Luiz Barboza

[email protected]