programa o orientada a objetos
Download
Skip this Video
Download Presentation
Programação Orientada a Objetos

Loading in 2 Seconds...

play fullscreen
1 / 30

Programação Orientada a Objetos - PowerPoint PPT Presentation


  • 163 Views
  • Uploaded on

Programação Orientada a Objetos. Artur Henrique Kronbauer [email protected] Conteúdos Abordados. Programação Orientada a Objetos Como modelar com Orientação a Objetos(OO) Modelos, seus dados e comportamentos Definição de classes Definição de tipos primitivos e não primitivos

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Programação Orientada a Objetos' - ciqala


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
conte dos abordados
Conteúdos Abordados
  • Programação Orientada a Objetos
  • Como modelar com Orientação a Objetos(OO)
  • Modelos, seus dados e comportamentos
  • Definição de classes
  • Definição de tipos primitivos e não primitivos
  • Construtores
  • Criação de Objetos
  • Sobrecarga
  • Interação entre Objetos
  • Generalização
  • Especialização
  • Herança
o que poo
O que é POO?
  • Programação Orientada a Objetos é uma metodologia de desenvolvimento de software.
  • Sua principal vantagem é a proximidade com a forma que os seres humanos visualizam e entendem o mundo ao seu redor.
  • Tem como principal objetivo facilitar a modelagem e desenvolvimento de sistemas, através da interação entre objetos.
como podemos modelar com oo
Como podemos modelar com OO?
  • Vamos imaginar a seguinte situação:
    • A esposa de um jovem casal, se encontra no segundo mês de gravidez. No meio da noite, a grávida acorda com uma azia terrível. Como é natural, a mulher pede que seu marido providencie um antiácido para ela.
como podemos modelar com oo1
Como podemos modelar com OO?
  • Como poderíamos representar esse problema sobre a ótica dos Objetos?
    • o objeto marido recebe uma mensagem do objeto esposa.
    • O objeto marido responde a essa mensagem mediante a uma ação: buscar antiácido.
    • A esposa não tem que dizer a ele onde ele deve procurar, é responsabilidade do marido a ação de procurar o antiácido.
    • Ao objeto esposa basta ter emitido uma mensagem ao marido.
modelos e dados
Modelos e Dados
  • Os modelos na POO são chamados de classes.
  • As classes especificam as características dos objetos materializados a partir delas.
  • Tais características são chamados de atributos.
  • Ao ser materializado um objeto dizemos que criamos uma Instância da classe.
  • Instâncias distintas de uma mesma classe possuem os mesmos atributos, entretanto com possíveis diferenças de valores.
modelos e dados1
Modelos e Dados
  • Os objetos são diferenciadas pelos seus nomes de referência e não pelo valor de seus atributos.
modelos e comportamento
Modelos e Comportamento
  • Em muitas situações os problemas do mundo real ao serem modelados para o mundo computacional, necessitam ser fragmentados de acordo com as ações que esse modelo especificará para a representação do problema.
  • Objetos possuem comportamentos os quais são representados nas classes através dos métodos.
modelos e comportamento1
Modelos e Comportamento
  • A fragmentação permite que o problema seja representado por um conjunto de métodos, os quais representam as ações do modelo.
  • Vantagens de ter vários métodos em um modelo:
    • facilidade em escrever o modelo;
    • utilizações repetidas de um mesmo método;
    • facilidade em dar manutenção;
    • utilização de parametrizações;
    • utilização adequada de recursos.
defini o de tipos
Definição de Tipos
  • Os tipos aparecem tanto nas declarações de atributos como na declaração de métodos.
  • Os tipos podem ser primitivos:
    • int, float, char, double, byte, boolean.
  • Os tipos podem ser Não primitivos (nomes de outras classes previamente definidas)
    • String, Mamiferos

Classes também são tipos!

exemplos da utiliza o de tipos
Exemplos da utilização de Tipos
  • Para definição de Atributos:
exemplos da utiliza o de tipos1
Exemplos da utilização de Tipos
  • Para a construção de Métodos:
construtores
Construtores
  • Um construtor é um método que possui o mesmo nome da classe onde ele está declarado.
  • Seu objetivo é inicializar o estado interno de um objeto (seus atributos).
  • O construtor não possui retorno de nenhum tipo, nem mesmo void.
  • Um construtor sempre é chamado através do operador new no momento de se instanciar um objeto.
sobrecarga de m todos e construtores
Sobrecarga de Métodos e Construtores
  • Diferentes métodos podem ter o mesmo nome, porém com listas de parâmetros (assinaturas) diferentes.
  • Esse conceito é chamado de sobrecarga.
  • Este fato muitas vezes é necessário para modelarmos comportamentos semanticamente semelhantes, porém alimentados com dados diferentes.
exemplo de sobrecarga
Exemplo de Sobrecarga

class soma

{  int calculo(int numero1, int numero2)

{ int resposta;

         resposta = numero1 + numero2;

return resposta;

}

int[] calculo(int vetor1[], int vetor2[])

     {    int[] resposta = new int[vetor1.length];

      int i;

for (i=0; i < vetor1.length; i++)

{  resposta[i] = vetor1[i] + vetor2[i];

}         

return resposta;

}

}

intera o entre objetos
Interação entre Objetos
  • Modelagens complexas necessitam da interação entre vários objetos para a solução do problema.
  • A idéia é chamada de “Dividir para conquistar”.
  • Em POO, podemos ter várias classes com objetivos específicos, as quais ao interagirem através de seus objetos solucionam problemas mais abrangente.
generaliza o
Generalização
  • Dona Cicinha quer evoluir o sistema para controlar o faturamento.
  • Para isso será necessário controlar os quitutes vendidos.
  • Ao ser criadas as classes quitutes e bebidas, podemos notar que alguns atributos e métodos são iguais.
  • A criação de uma classe chamada produtos poderia agrupar as semelhanças.
generaliza o2
Generalização
  • Através da generalização podemos agrupar em uma classe um conjunto de definições comuns a diferentes classes.
especializa o
Especialização
  • A especialização é o caminho inverso da generalização. Partindo de um modelo mais genérico podemos acrescentar novas características e comportamentos aos já existentes.
heran a
Herança
  • Herança é um dos mecanismos fundamentais de relação entre classes na orientação a objetos.
  • Ela relaciona uma classe pai (superclasse) com outras classes filhas (subclasses) de forma hierárquica.
  • As subclasses herdam todos os atributos e métodos da superclasse e podem criar os seus próprios métodos e atributos.
heran a1
Herança
  • A definição de herança em uma classe ocorre na linguagem Java através da palavra “extends” colocada logo após o nome da classe que herda de outra.
  • Uma subclasse para referenciar os métodos ou atributos da superclasse utilizamos a palavra reservada super.
assuntos para a pr xima aula
Assuntos para a próxima Aula
  • Modificadores de acesso a Atributos e Métodos
  • Polimorfismo
  • Classes Abstratas
  • Interfaces
  • Pacote de Classes
bibliografia
Bibliografia
  • BARNES, D e Kölling, M. Programação Orientada a Objetos com Java. 2a Edição: Editora Pearson Education. 2007.
  • DEITEL, H. M. e DEITEL, P. J. Java como Programar. 4a Edição: Editora Bookman. 2003.
  • SANTOS, R. Introdução à Programação Orientada a Objetos Usando Java. 1a Edição: Editora Campus. 2003.
ad