TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Programação Orientada a Objetos

Por:   •  27/6/2016  •  Resenha  •  1.745 Palavras (7 Páginas)  •  237 Visualizações

Página 1 de 7

Programação orientada a objetos

A programação orientada por procedimento, paradigma mais popular na década de 70 concentra-se em subprograma e bibliotecas de subprogramas. Nela os dados são enviados ao subprograma para computação. Ex: classificação de um array de inteiros o vetor é enviado como parâmetros a um subprograma que o classifica.

Já a orientação a objetos é um método de implementação no qual os programas são organizados como um conjunto de objetos cooperantes sendo cada objeto um representante de uma determinada classe e as classes organizadas através de uma relação de heranças. Tem suas raízes na LP simula 67 e foi amplamente desenvolvida após a LP smalltalk 80 uma LP 00 deve oferecer:

  • Tipos de dados abstratos (classes)
  • Herança
  • Um tipo especial de vinculação dinâmica (polimorfismo)

São abstrações de objetos do mundo real.

Cada classe deve representar um conceito. Ex: pessoa , veículos .

Um conceito pode ser descrito por atributos ex: nome, idade.

Os atributos podem sofrer operações ex: leitura, adição.

Dados + comportamento especificados em um mesmo modulo > classes.

Objetos são instancias de classes.

Procedural em c

Typedef struct {

char* nome;

int idades;

}pessoa;

Pessoa p1;

Pessoa aniversario(pessoa p){

p.idade = p.idade +1;

return pessoa;

}

Void main(){

Pessoa p1;

P1.nome = “ana”;

P1.idade = 20;

P1 = aniversario (p1);

}

Orientada a objetos

Class pessoa{

String nome;

Int idade;

Pessoa(string,n,int i){

Nome = n;

Idade = i;

}

Void aniversario (){

Idade = idade + 1;

}

} 

Public static void main (){

Pessoa p1 =

New pessoa (“ana”,20)

P1.aniversario();

}

Todos os objetos são instâncias de classes, são variáveis dinâmicas criadas a partir das classes.

Podem ser criados e destruídos.

As invocações de métodos descritos nas classes atuam sobre os objetos. São ativações de métodos em um objeto e são chamados de mensagens.

A interface de um objeto é o conjunto de serviços oferecidos por ele são os métodos da classe de objetos compartilhados entre todos os objetos da classe.

Um método é uma abstração procedimental cada objeto quando instanciado, ocupa espaço na memória para seus dados.

Os valores dos atributos do objeto definem seu estado. Vários objetos podem ser criados a partir de uma mesma classe.

Cada objeto possui uma identidade e um tipo (classe).

A interação entre objetos se da através de mensagens trocadas através da interface (ou protocolo) especificado para o objeto pela sua classe .

Ex:

ContaBancaria é uma classe

- a conta de Maria e João são instancia.

 

Conta bancaria

-Nome

-Saldo

+sacar

+depositar

+consultar

Nome João

Saldo 200

Nome Maria

Saldo 100

Pessoa

-nome

-idade

-sexo

+apresentar

P1: Pessoa

Nome:"ana"

Idade:20

Sexo:"f"

        

P2:Pessoa

Nome:jose

Idade:35

Sexo:"m"

p1.apresentar()"Ana,20,mulher"

p2.apresentar()//Jose,35,homem

HERANÇA

Estabelece hierarquias entre as classes. a base da herança se da pela transmissão de atributos  e métodos aos descendentes, ou seja, uma classe herda as propriedades de sua classe pai (ou classe base). esse comportamento pode ser alterado pelo controle de acesso.

Ex: professor é uma pessoa

     aluno é uma pessoa        

[pic 1]

         [pic 2]

                                                                                                                   classe base

                                                                super classe[pic 3]

                                                                                                                                                                                                                                                                                classe derivada        [pic 4][pic 5][pic 6][pic 7][pic 8][pic 9][pic 10][pic 11][pic 12]

Uma classe derivada pode acrescentar novos atributos e métodos, e também modificar os métodos herdados, com o propósito de oferecer um comportamento mais especifico aos objetos da classe herdada.

um método modificado tem o mesmo nome e protocolo do herdado e sobrepoe-se coverride a versão herdada.

Class Pessoa{

        string nome;

        void apresentar(){

                print (nome);

        }

}

Class Aluno extends Pessoa{

        int ra;

}

Pessoa p1 = new Pessoa()

p1.nome = "joao"// má pratica [encapsulamento]

...

Baixar como (para membros premium)  txt (7.6 Kb)   pdf (139.3 Kb)   docx (47.4 Kb)  
Continuar por mais 6 páginas »
Disponível apenas no TrabalhosGratuitos.com