SlideShare uma empresa Scribd logo
Introdução a
Programação Orientada a
         Objetos

  Programação em Java
Desenvolvimento de Software tradicional

  Programas


   Processos


   dados




                   2/32
Enfoque a programas
   Visão tradicional usa perspectiva de algoritmo

   O principal bloco de construção é o procedimento ou
    função

   Conduz o foco de atenção para questões referentes ao
    controle e a decomposição de algoritmos maiores em
    outros menores

   Modelagem de dados divide as informações em tabelas,
    criando mecanismos para junção posterior


                              3/32
Desenvolvimento Orientado a Objetos
Visualiza e representa o mundo real como um
conjunto de objetos que interagem entre si para
que determinadas operações sejam realizadas.

       Motorista                 Carro
                                 Parar




                        4/32
Desenvolvimento Orientado a Objetos
                                          Conta corrente
   Objetos do mundo real
    transformam-se em objetos no           deposito()
    software.
                                              saldo

   Programação orientada a objetos é
    freqüentemente referenciada como
    um “novo” paradigma de
    programação.

   Viabiliza a montagem de sistemas
    a partir de componentes.


                                   5/32
Exemplo
   Você resolve jantar numa pizzaria.

   Existem vários objetos na pizzaria:
     Pizza
     Mesa
     Garçom, etc....


   Cada objeto tem características
    que o descrevem:
     Mesa redonda ou retangular
     Mesa desocupada ou não



                                   6/32
Criação dos objetos
   Desenvolver uma aplicação no paradigma OO implica
    em modelar os objetos existentes no mundo real no
    sistema em desenvolvimento.

   Objetos existentes no mundo real podem ser complexos,
    tornando necessário abstrair as características
    relevantes de cada entidade para o sistema em
    desenvolvimento

   O processo de abstração é fundamental para o
    desenvolvimento de softwares orientados a objetos.


                              7/32
Abstração

                    Eliminação
                              do
                   irrelevante e
                   amplificação
                   do essencial




            8/32
Abstração

   É o mecanismo que nos permite representar uma
    realidade complexa em termos de um modelo
    simplificado, de modo que detalhes irrelevantes possam
    ser suprimidos.

   Processo de filtragem de detalhes sem importância do
    objeto, para que apenas as características apropriadas
    que o descrevem permaneçam.




                              9/32
Exemplo – abstração




     Registros        Registros       Registros
     de oficina       em casa         Detran
 placa, conserto,   Km/l,             Identificação,
 pagamento, etc..   manutenção, etc   impostos, placa,
                                      etc..
                          10/32
Objetos
   Um objeto é qualquer coisa, real ou abstrata, sobre a qual
    armazenamos dados e operações que manipulam tais dados

   Unidade básica de modularização do sistema na abordagem OO

   Um objeto é um ente independente, composto por:
     atributos, isto é, características ou propriedades que definem o objeto
     comportamento, isto é, um conjunto de ações pré-definidas
      (denominada métodos), através das quais o objeto responderá à
      demanda de processamento por parte de outros objetos




                                      11/32
Desenvolvimento tradicional x
orientado a objetos

      Programa            Programa

      Processos            Classes

                          Atributos
       Dados

                          Operações



                  12/32
Classes

   Classes: “fábricas” de objetos.

   Exemplificando, temos que Pessoa é uma classe e João
    é um objeto (instância) da classe Pessoa.

   Um carro é uma classe; “meu carro” é um objeto.

   Objetos similares são agrupados em classes



                               13/32
Classes – Fábrica de objetos.




 Definição da classe




                       14/32
Mensagens
   A POO identifica uma abordagem em que o programador visualiza
    seu programa em execução em termos de objetos que se
    comunicam através de trocas de mensagens

   Mensagem - composta por um nome e por parâmetros (opcional)


           Cliente                           Conta
                         debite(50R$)        debite




                                 15/32
Mensagens

   Objetos interagem enviando mensagens uns para os
    outros;

   O objeto que receber a mensagem responderá através
    da seleção e execução de um método que faz parte de
    seu comportamento;

   Após a execução, o controle volta para o objeto que
    enviou a mensagem.



                              16/32
Classes e objetos em Java
        Estrutura de uma classe em Java


                                   Definição da
[acesso] class NomeDaClasse        classe
{

    Atributos
    Construtores                   O conteúdo da
    Métodos                        classe
}



                          17/32
Classes e objetos em Java
         Métodos de uma classe em Java

   Definem as operações que podem ser invocadas em
    um objeto.

   Podem receber parâmetros ou não.
        public String getNomeCurso()
        public void setNomeCurso(String nome)

   O cabeçalho define a assinatura do método.

                             18/32
Classes e objetos em Java
          Atributos de uma classe em Java
   Atributos armazenam valores     public class CursoGraduacao {
    para um objeto.
                                            private String nomeCurso;
                                            private int qtd_periodos;
   Eles também são conhecidos
    como variáveis de instâncias.           Construtor e métodos omitidos.
                                    }
   Atributos definem o estado
    de um objeto.
                                    Modificador de             Nome da
                                    visibilidade        Tipo   variável


                                                private String nomeCurso;


                                    19/32
Exemplo
public class Produto   {

    private int codigo;
    private String nome;

    public String getNome() {
         return nome;
    }
    public void setNome(String nome_produto) {
         nome = nome_produto;
    }
}


                                 20/32
Classes e objetos em Java
          Construção de objetos em Java

   Realizada com a palavra         Declaração do                  Objeto real
    reservada New.                  tipo da variável    Variável   criado
   Processo conhecido como
    criação de uma instância                      Produto p = new Produto();
    de uma classe.
   Tipo da variável pode diferir
    do objeto realmente criado
    (desde que estejam
    relacionados por herança).




                                     21/32
Construtores
   Da mesma forma que com        EX:
    variáveis comuns, é
    possível inicializar um       public Produto(int cod, String nome_prod)
    objeto logo ao construí-lo;   {
                                     codigo = cod;
   Construtores inicializam         nome = nome_prod;
    um objeto.                    }


   Eles têm o mesmo nome
    das suas classes.             int cod = 341278;
                                  String prod = “Computador MSX Expert”;
   Eles freqüentemente
    recebem valores de            Produto p = new Produto(cod, prod);
    parâmetros externos para
    definir os atributos.

                                     22/32
Classes e objetos em Java

   Construtores:
     Pode existir mais de um construtor em uma classe;
     Caso não seja definido nenhum construtor, o compilador cria o
      construtor padrão, sem parâmetros;
            O construtor padrão inicializa os atributos de classe para seus
             valores padrões.
       Caso seja definido qualquer construtor, o construtor padrão não
        será adicionado pelo compilador;
            Caso se tenha interesse que a classe ainda possua um construtor
             sem parâmetros, é necessário declará-lo explicitamente.




                                         23/32
A Referência this
   Métodos de instância         EX:
    recebem um argumento
    chamado this que é uma       Class Produto   {
    referência ao objeto
    corrente.                    private int codigo;
   O uso explícito do this é    private String nome;
    necessário quando:
      o nome de um parâmetro    public Produto(int codigo, String nome)
       do método for o mesmo     {
       de uma variável de           this.codigo = codigo;
       instância;                   this.nome = nome;
      desejamos passar uma      }
       referência do objeto
       corrente como parâmetro
       para outro método.



                                  24/32
Introdução a
Programação Orientada a
         Objetos

  Programação em Java

   Prof. Maurício Braga

Mais conteúdo relacionado

Mais procurados

Aula 01 - Fundamentos de Banco de Dados (2).pdf
Aula 01 - Fundamentos de Banco de Dados (2).pdfAula 01 - Fundamentos de Banco de Dados (2).pdf
Aula 01 - Fundamentos de Banco de Dados (2).pdf
Marcelo Silva
 
JAVA - Orientação a Objetos
JAVA - Orientação a ObjetosJAVA - Orientação a Objetos
JAVA - Orientação a Objetos
Elaine Cecília Gatto
 
JavaScript - Introdução com Orientação a Objetos
JavaScript - Introdução com Orientação a ObjetosJavaScript - Introdução com Orientação a Objetos
JavaScript - Introdução com Orientação a Objetos
Eduardo Mendes
 
Conceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetosConceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetos
Leonardo Melo Santos
 
07 html formulários
07 html   formulários07 html   formulários
07 html formulários
Centro Paula Souza
 
POO - 13 - Arrays em Java
POO - 13 - Arrays em JavaPOO - 13 - Arrays em Java
POO - 13 - Arrays em Java
Ludimila Monjardim Casagrande
 
Curso de Desenvolvimento Web - Módulo 02 - CSS
Curso de Desenvolvimento Web - Módulo 02 - CSSCurso de Desenvolvimento Web - Módulo 02 - CSS
Curso de Desenvolvimento Web - Módulo 02 - CSS
Rodrigo Bueno Santa Maria, BS, MBA
 
html, css e java script - renato araujo
html, css e java script - renato araujohtml, css e java script - renato araujo
html, css e java script - renato araujo
orenatoaraujo
 
Aula 09 - introducao oo
Aula 09 - introducao ooAula 09 - introducao oo
Aula 09 - introducao oo
Moacir Jóse Ferreira Junior Ferreira
 
Java interface gráfica swing
Java   interface gráfica swingJava   interface gráfica swing
Java interface gráfica swing
Armando Daniel
 
Apresentação sobre o Word
Apresentação sobre o WordApresentação sobre o Word
Apresentação sobre o Word
guestcc9d72
 
Aula javascript
Aula  javascriptAula  javascript
Aula javascript
Gabriel Moura
 
Algoritmo 04 - Estruturas de decisão
 Algoritmo 04 - Estruturas de decisão Algoritmo 04 - Estruturas de decisão
Algoritmo 04 - Estruturas de decisão
Professor Samuel Ribeiro
 
Modelos de processos de software
Modelos de processos de softwareModelos de processos de software
Modelos de processos de software
Nécio de Lima Veras
 
DOMinando JavaScript
DOMinando JavaScriptDOMinando JavaScript
DOMinando JavaScript
Thiago Poiani
 
Curso CSS 3 - Aula Introdutória com conceitos básicos
Curso CSS 3 - Aula Introdutória com conceitos básicosCurso CSS 3 - Aula Introdutória com conceitos básicos
Curso CSS 3 - Aula Introdutória com conceitos básicos
Tiago Antônio da Silva
 
CSS
CSSCSS
Aula 2 - Introdução a Banco de Dados
Aula 2 - Introdução a Banco de DadosAula 2 - Introdução a Banco de Dados
Aula 2 - Introdução a Banco de Dados
Vitor Hugo Melo Araújo
 
Introdução básica ao JavaScript
Introdução básica ao JavaScriptIntrodução básica ao JavaScript
Introdução básica ao JavaScript
Carlos Eduardo Kadu
 
Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POO
Daniel Brandão
 

Mais procurados (20)

Aula 01 - Fundamentos de Banco de Dados (2).pdf
Aula 01 - Fundamentos de Banco de Dados (2).pdfAula 01 - Fundamentos de Banco de Dados (2).pdf
Aula 01 - Fundamentos de Banco de Dados (2).pdf
 
JAVA - Orientação a Objetos
JAVA - Orientação a ObjetosJAVA - Orientação a Objetos
JAVA - Orientação a Objetos
 
JavaScript - Introdução com Orientação a Objetos
JavaScript - Introdução com Orientação a ObjetosJavaScript - Introdução com Orientação a Objetos
JavaScript - Introdução com Orientação a Objetos
 
Conceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetosConceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetos
 
07 html formulários
07 html   formulários07 html   formulários
07 html formulários
 
POO - 13 - Arrays em Java
POO - 13 - Arrays em JavaPOO - 13 - Arrays em Java
POO - 13 - Arrays em Java
 
Curso de Desenvolvimento Web - Módulo 02 - CSS
Curso de Desenvolvimento Web - Módulo 02 - CSSCurso de Desenvolvimento Web - Módulo 02 - CSS
Curso de Desenvolvimento Web - Módulo 02 - CSS
 
html, css e java script - renato araujo
html, css e java script - renato araujohtml, css e java script - renato araujo
html, css e java script - renato araujo
 
Aula 09 - introducao oo
Aula 09 - introducao ooAula 09 - introducao oo
Aula 09 - introducao oo
 
Java interface gráfica swing
Java   interface gráfica swingJava   interface gráfica swing
Java interface gráfica swing
 
Apresentação sobre o Word
Apresentação sobre o WordApresentação sobre o Word
Apresentação sobre o Word
 
Aula javascript
Aula  javascriptAula  javascript
Aula javascript
 
Algoritmo 04 - Estruturas de decisão
 Algoritmo 04 - Estruturas de decisão Algoritmo 04 - Estruturas de decisão
Algoritmo 04 - Estruturas de decisão
 
Modelos de processos de software
Modelos de processos de softwareModelos de processos de software
Modelos de processos de software
 
DOMinando JavaScript
DOMinando JavaScriptDOMinando JavaScript
DOMinando JavaScript
 
Curso CSS 3 - Aula Introdutória com conceitos básicos
Curso CSS 3 - Aula Introdutória com conceitos básicosCurso CSS 3 - Aula Introdutória com conceitos básicos
Curso CSS 3 - Aula Introdutória com conceitos básicos
 
CSS
CSSCSS
CSS
 
Aula 2 - Introdução a Banco de Dados
Aula 2 - Introdução a Banco de DadosAula 2 - Introdução a Banco de Dados
Aula 2 - Introdução a Banco de Dados
 
Introdução básica ao JavaScript
Introdução básica ao JavaScriptIntrodução básica ao JavaScript
Introdução básica ao JavaScript
 
Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POO
 

Destaque

Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetos
Cleyton Ferrari
 
Programação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaProgramação Orientada a Objetos com Java
Programação Orientada a Objetos com Java
Álvaro Farias Pinheiro
 
Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos
Luis Ferreira
 
Orientação a Objetos
Orientação a ObjetosOrientação a Objetos
Orientação a Objetos
Edy Segura
 
Programação Estruturada e Orientada a Objetos
Programação Estruturada e Orientada a ObjetosProgramação Estruturada e Orientada a Objetos
Programação Estruturada e Orientada a Objetos
Albert Bitencourte de Lemos
 
Programação Orientada a Objetos - 001
Programação Orientada a Objetos - 001Programação Orientada a Objetos - 001
Programação Orientada a Objetos - 001
José Volmei Dal Prá Junior
 
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVAProgramação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Cristiano Almeida
 
Programação Orientada á Objeto - Paradigmas e Implementação
Programação Orientada á Objeto - Paradigmas e ImplementaçãoProgramação Orientada á Objeto - Paradigmas e Implementação
Programação Orientada á Objeto - Paradigmas e Implementação
Evandro Júnior
 
Principais diagramas da UML
Principais diagramas da UMLPrincipais diagramas da UML
Principais diagramas da UML
Jéssica Nathany Carvalho Freitas
 
O paradigma da orientação a objetos
O paradigma da orientação a objetosO paradigma da orientação a objetos
O paradigma da orientação a objetos
Nécio de Lima Veras
 
Material de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de ProgramaçãoMaterial de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de Programação
rodfernandes
 
Array list
Array listArray list
Array list
Celso Adam
 
JRebel para desenvolvedores
JRebel para desenvolvedoresJRebel para desenvolvedores
JRebel para desenvolvedores
José Volmei Dal Prá Junior
 
Java orientação a objetos (variaveis de instancia e metodos)
Java   orientação a objetos (variaveis de instancia e metodos)Java   orientação a objetos (variaveis de instancia e metodos)
Java orientação a objetos (variaveis de instancia e metodos)
Armando Daniel
 
Orientação a Objetos - Conceitos
Orientação a Objetos - ConceitosOrientação a Objetos - Conceitos
Orientação a Objetos - Conceitos
Mayron Cachina
 
Linguagem de Programação Estruturada com Java-Aula2
Linguagem de Programação Estruturada com Java-Aula2Linguagem de Programação Estruturada com Java-Aula2
Linguagem de Programação Estruturada com Java-Aula2
Elvis Araújo
 
Programação Orientada a Objeto(POO)
Programação Orientada a Objeto(POO)Programação Orientada a Objeto(POO)
Programação Orientada a Objeto(POO)
Carlos Alberto
 
Testes In Browser Em Rails Com Capybara E Webdriver
Testes In Browser Em Rails Com Capybara E WebdriverTestes In Browser Em Rails Com Capybara E Webdriver
Testes In Browser Em Rails Com Capybara E Webdriver
Maurício Linhares
 
Geek night-2015
Geek night-2015Geek night-2015
Geek night-2015
Taise Dias da Silva
 
Aula 02 POO - Meu Primeiro Código
Aula 02 POO - Meu Primeiro CódigoAula 02 POO - Meu Primeiro Código
Aula 02 POO - Meu Primeiro Código
Aislan Rafael
 

Destaque (20)

Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetos
 
Programação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaProgramação Orientada a Objetos com Java
Programação Orientada a Objetos com Java
 
Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos Módulo 9 - Introdução à Programação Orientada a Objectos
Módulo 9 - Introdução à Programação Orientada a Objectos
 
Orientação a Objetos
Orientação a ObjetosOrientação a Objetos
Orientação a Objetos
 
Programação Estruturada e Orientada a Objetos
Programação Estruturada e Orientada a ObjetosProgramação Estruturada e Orientada a Objetos
Programação Estruturada e Orientada a Objetos
 
Programação Orientada a Objetos - 001
Programação Orientada a Objetos - 001Programação Orientada a Objetos - 001
Programação Orientada a Objetos - 001
 
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVAProgramação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVA
 
Programação Orientada á Objeto - Paradigmas e Implementação
Programação Orientada á Objeto - Paradigmas e ImplementaçãoProgramação Orientada á Objeto - Paradigmas e Implementação
Programação Orientada á Objeto - Paradigmas e Implementação
 
Principais diagramas da UML
Principais diagramas da UMLPrincipais diagramas da UML
Principais diagramas da UML
 
O paradigma da orientação a objetos
O paradigma da orientação a objetosO paradigma da orientação a objetos
O paradigma da orientação a objetos
 
Material de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de ProgramaçãoMaterial de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de Programação
 
Array list
Array listArray list
Array list
 
JRebel para desenvolvedores
JRebel para desenvolvedoresJRebel para desenvolvedores
JRebel para desenvolvedores
 
Java orientação a objetos (variaveis de instancia e metodos)
Java   orientação a objetos (variaveis de instancia e metodos)Java   orientação a objetos (variaveis de instancia e metodos)
Java orientação a objetos (variaveis de instancia e metodos)
 
Orientação a Objetos - Conceitos
Orientação a Objetos - ConceitosOrientação a Objetos - Conceitos
Orientação a Objetos - Conceitos
 
Linguagem de Programação Estruturada com Java-Aula2
Linguagem de Programação Estruturada com Java-Aula2Linguagem de Programação Estruturada com Java-Aula2
Linguagem de Programação Estruturada com Java-Aula2
 
Programação Orientada a Objeto(POO)
Programação Orientada a Objeto(POO)Programação Orientada a Objeto(POO)
Programação Orientada a Objeto(POO)
 
Testes In Browser Em Rails Com Capybara E Webdriver
Testes In Browser Em Rails Com Capybara E WebdriverTestes In Browser Em Rails Com Capybara E Webdriver
Testes In Browser Em Rails Com Capybara E Webdriver
 
Geek night-2015
Geek night-2015Geek night-2015
Geek night-2015
 
Aula 02 POO - Meu Primeiro Código
Aula 02 POO - Meu Primeiro CódigoAula 02 POO - Meu Primeiro Código
Aula 02 POO - Meu Primeiro Código
 

Semelhante a Introdução a programação Orientada a Objeto

Java7
Java7Java7
v
vv
Programação OO - Java
Programação OO - JavaProgramação OO - Java
Programação OO - Java
Secretaria de Educação de Goiás
 
Linguagem Java - Conceitos e Técnicas
Linguagem Java - Conceitos e TécnicasLinguagem Java - Conceitos e Técnicas
Linguagem Java - Conceitos e Técnicas
Breno Vitorino
 
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
Adriano Teixeira de Souza
 
Aula 3 -_fundamentos_sobre_aoo
Aula 3 -_fundamentos_sobre_aooAula 3 -_fundamentos_sobre_aoo
Aula 3 -_fundamentos_sobre_aoo
Portal_do_estudante_ADS
 
Construtor em Java
Construtor em JavaConstrutor em Java
Construtor em Java
Ederson Lima
 
Construtores em Java
Construtores em JavaConstrutores em Java
Construtores em Java
Ederson Lima
 
Classes e Objectos JAVA
Classes e Objectos JAVAClasses e Objectos JAVA
Classes e Objectos JAVA
Pedro De Almeida
 
Python Orientação a Objeto
Python Orientação a ObjetoPython Orientação a Objeto
Python Orientação a Objeto
antonio sérgio nogueira
 
Naked Objects
Naked ObjectsNaked Objects
Naked Objects
Renato Shirakashi
 
IES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a ObjetosIES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a Objetos
Ramon Mayor Martins
 
Aula 1 - Linguagem III
Aula 1 - Linguagem IIIAula 1 - Linguagem III
Aula 1 - Linguagem III
Juliano Weber
 
Curso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetosCurso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetos
Leonardo Melo Santos
 
AULA DIA 22-2024 - PROGRAMACAO ORIENTADA A OBJETOS EM JAVA.pptx
AULA DIA 22-2024 - PROGRAMACAO ORIENTADA A OBJETOS EM JAVA.pptxAULA DIA 22-2024 - PROGRAMACAO ORIENTADA A OBJETOS EM JAVA.pptx
AULA DIA 22-2024 - PROGRAMACAO ORIENTADA A OBJETOS EM JAVA.pptx
AurelcioOliveira
 
Script c
Script cScript c
Script c
Raphael
 
Desenvolvimento iOS - Aula 1
Desenvolvimento iOS - Aula 1Desenvolvimento iOS - Aula 1
Desenvolvimento iOS - Aula 1
Saulo Arruda
 
Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba
Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vbaConceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba
Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba
Wanderlei Silva do Carmo
 
Aula 02 implementação objeto
Aula 02   implementação objetoAula 02   implementação objeto
Aula 02 implementação objeto
Danilo Alves
 
03 poo
03 poo03 poo
03 poo
eduardohabib
 

Semelhante a Introdução a programação Orientada a Objeto (20)

Java7
Java7Java7
Java7
 
v
vv
v
 
Programação OO - Java
Programação OO - JavaProgramação OO - Java
Programação OO - Java
 
Linguagem Java - Conceitos e Técnicas
Linguagem Java - Conceitos e TécnicasLinguagem Java - Conceitos e Técnicas
Linguagem Java - Conceitos e Técnicas
 
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
Estrutura de Dados em Java (Introdução à Programação Orientada a Objetos)
 
Aula 3 -_fundamentos_sobre_aoo
Aula 3 -_fundamentos_sobre_aooAula 3 -_fundamentos_sobre_aoo
Aula 3 -_fundamentos_sobre_aoo
 
Construtor em Java
Construtor em JavaConstrutor em Java
Construtor em Java
 
Construtores em Java
Construtores em JavaConstrutores em Java
Construtores em Java
 
Classes e Objectos JAVA
Classes e Objectos JAVAClasses e Objectos JAVA
Classes e Objectos JAVA
 
Python Orientação a Objeto
Python Orientação a ObjetoPython Orientação a Objeto
Python Orientação a Objeto
 
Naked Objects
Naked ObjectsNaked Objects
Naked Objects
 
IES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a ObjetosIES GF - Introdução a Linguagem de Programação Orientada a Objetos
IES GF - Introdução a Linguagem de Programação Orientada a Objetos
 
Aula 1 - Linguagem III
Aula 1 - Linguagem IIIAula 1 - Linguagem III
Aula 1 - Linguagem III
 
Curso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetosCurso de OO com C# - Parte 01 - Orientação a objetos
Curso de OO com C# - Parte 01 - Orientação a objetos
 
AULA DIA 22-2024 - PROGRAMACAO ORIENTADA A OBJETOS EM JAVA.pptx
AULA DIA 22-2024 - PROGRAMACAO ORIENTADA A OBJETOS EM JAVA.pptxAULA DIA 22-2024 - PROGRAMACAO ORIENTADA A OBJETOS EM JAVA.pptx
AULA DIA 22-2024 - PROGRAMACAO ORIENTADA A OBJETOS EM JAVA.pptx
 
Script c
Script cScript c
Script c
 
Desenvolvimento iOS - Aula 1
Desenvolvimento iOS - Aula 1Desenvolvimento iOS - Aula 1
Desenvolvimento iOS - Aula 1
 
Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba
Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vbaConceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba
Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba
 
Aula 02 implementação objeto
Aula 02   implementação objetoAula 02   implementação objeto
Aula 02 implementação objeto
 
03 poo
03 poo03 poo
03 poo
 

Último

1ª LEI DE OHN, CARACTERISTICAS IMPORTANTES.
1ª LEI DE OHN, CARACTERISTICAS IMPORTANTES.1ª LEI DE OHN, CARACTERISTICAS IMPORTANTES.
1ª LEI DE OHN, CARACTERISTICAS IMPORTANTES.
LeticiaRochaCupaiol
 
Slides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptx
Slides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptxSlides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptx
Slides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptx
LuizHenriquedeAlmeid6
 
Vogais Ilustrados para alfabetização infantil
Vogais Ilustrados para alfabetização infantilVogais Ilustrados para alfabetização infantil
Vogais Ilustrados para alfabetização infantil
mamaeieby
 
Aula 2 - Revisando o significado de fração - Parte 2.pptx
Aula 2 - Revisando o significado de fração - Parte 2.pptxAula 2 - Revisando o significado de fração - Parte 2.pptx
Aula 2 - Revisando o significado de fração - Parte 2.pptx
LILIANPRESTESSCUDELE
 
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdfUFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
Manuais Formação
 
PP Slides Lição 11, Betel, Ordenança para exercer a fé, 2Tr24.pptx
PP Slides Lição 11, Betel, Ordenança para exercer a fé, 2Tr24.pptxPP Slides Lição 11, Betel, Ordenança para exercer a fé, 2Tr24.pptx
PP Slides Lição 11, Betel, Ordenança para exercer a fé, 2Tr24.pptx
LuizHenriquedeAlmeid6
 
cronograma-enem-2024-planejativo-estudos.pdf
cronograma-enem-2024-planejativo-estudos.pdfcronograma-enem-2024-planejativo-estudos.pdf
cronograma-enem-2024-planejativo-estudos.pdf
todorokillmepls
 
A Evolução da história da Física - Albert Einstein
A Evolução da história da Física - Albert EinsteinA Evolução da história da Física - Albert Einstein
A Evolução da história da Física - Albert Einstein
WelberMerlinCardoso
 
UFCD_10949_Lojas e-commerce no-code_índice.pdf
UFCD_10949_Lojas e-commerce no-code_índice.pdfUFCD_10949_Lojas e-commerce no-code_índice.pdf
UFCD_10949_Lojas e-commerce no-code_índice.pdf
Manuais Formação
 
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdfA QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
AurelianoFerreirades2
 
REGULAMENTO DO CONCURSO DESENHOS AFRO/2024 - 14ª edição - CEIRI /UREI (ficha...
REGULAMENTO  DO CONCURSO DESENHOS AFRO/2024 - 14ª edição - CEIRI /UREI (ficha...REGULAMENTO  DO CONCURSO DESENHOS AFRO/2024 - 14ª edição - CEIRI /UREI (ficha...
REGULAMENTO DO CONCURSO DESENHOS AFRO/2024 - 14ª edição - CEIRI /UREI (ficha...
Eró Cunha
 
Dicas de normas ABNT para trabalho de conclusão de curso
Dicas de normas ABNT para trabalho de conclusão de cursoDicas de normas ABNT para trabalho de conclusão de curso
Dicas de normas ABNT para trabalho de conclusão de curso
Simone399395
 
Pintura Romana .pptx
Pintura Romana                     .pptxPintura Romana                     .pptx
Pintura Romana .pptx
TomasSousa7
 
Atividade de reforço de matemática 2º ano
Atividade de reforço de matemática 2º anoAtividade de reforço de matemática 2º ano
Atividade de reforço de matemática 2º ano
fernandacosta37763
 
Slides Lição 11, CPAD, A Realidade Bíblica do Inferno, 2Tr24.pptx
Slides Lição 11, CPAD, A Realidade Bíblica do Inferno, 2Tr24.pptxSlides Lição 11, CPAD, A Realidade Bíblica do Inferno, 2Tr24.pptx
Slides Lição 11, CPAD, A Realidade Bíblica do Inferno, 2Tr24.pptx
LuizHenriquedeAlmeid6
 
epidemias endemia-pandemia-e-epidemia (1).ppt
epidemias endemia-pandemia-e-epidemia (1).pptepidemias endemia-pandemia-e-epidemia (1).ppt
epidemias endemia-pandemia-e-epidemia (1).ppt
MarceloMonteiro213738
 
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptxTreinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
MarcosPaulo777883
 
Testes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdfTestes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdf
lveiga112
 
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
AntnioManuelAgdoma
 
Cartinhas de solidariedade e esperança.pptx
Cartinhas de solidariedade e esperança.pptxCartinhas de solidariedade e esperança.pptx
Cartinhas de solidariedade e esperança.pptx
Zenir Carmen Bez Trombeta
 

Último (20)

1ª LEI DE OHN, CARACTERISTICAS IMPORTANTES.
1ª LEI DE OHN, CARACTERISTICAS IMPORTANTES.1ª LEI DE OHN, CARACTERISTICAS IMPORTANTES.
1ª LEI DE OHN, CARACTERISTICAS IMPORTANTES.
 
Slides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptx
Slides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptxSlides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptx
Slides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptx
 
Vogais Ilustrados para alfabetização infantil
Vogais Ilustrados para alfabetização infantilVogais Ilustrados para alfabetização infantil
Vogais Ilustrados para alfabetização infantil
 
Aula 2 - Revisando o significado de fração - Parte 2.pptx
Aula 2 - Revisando o significado de fração - Parte 2.pptxAula 2 - Revisando o significado de fração - Parte 2.pptx
Aula 2 - Revisando o significado de fração - Parte 2.pptx
 
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdfUFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
UFCD_3546_Prevenção e primeiros socorros_geriatria.pdf
 
PP Slides Lição 11, Betel, Ordenança para exercer a fé, 2Tr24.pptx
PP Slides Lição 11, Betel, Ordenança para exercer a fé, 2Tr24.pptxPP Slides Lição 11, Betel, Ordenança para exercer a fé, 2Tr24.pptx
PP Slides Lição 11, Betel, Ordenança para exercer a fé, 2Tr24.pptx
 
cronograma-enem-2024-planejativo-estudos.pdf
cronograma-enem-2024-planejativo-estudos.pdfcronograma-enem-2024-planejativo-estudos.pdf
cronograma-enem-2024-planejativo-estudos.pdf
 
A Evolução da história da Física - Albert Einstein
A Evolução da história da Física - Albert EinsteinA Evolução da história da Física - Albert Einstein
A Evolução da história da Física - Albert Einstein
 
UFCD_10949_Lojas e-commerce no-code_índice.pdf
UFCD_10949_Lojas e-commerce no-code_índice.pdfUFCD_10949_Lojas e-commerce no-code_índice.pdf
UFCD_10949_Lojas e-commerce no-code_índice.pdf
 
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdfA QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
 
REGULAMENTO DO CONCURSO DESENHOS AFRO/2024 - 14ª edição - CEIRI /UREI (ficha...
REGULAMENTO  DO CONCURSO DESENHOS AFRO/2024 - 14ª edição - CEIRI /UREI (ficha...REGULAMENTO  DO CONCURSO DESENHOS AFRO/2024 - 14ª edição - CEIRI /UREI (ficha...
REGULAMENTO DO CONCURSO DESENHOS AFRO/2024 - 14ª edição - CEIRI /UREI (ficha...
 
Dicas de normas ABNT para trabalho de conclusão de curso
Dicas de normas ABNT para trabalho de conclusão de cursoDicas de normas ABNT para trabalho de conclusão de curso
Dicas de normas ABNT para trabalho de conclusão de curso
 
Pintura Romana .pptx
Pintura Romana                     .pptxPintura Romana                     .pptx
Pintura Romana .pptx
 
Atividade de reforço de matemática 2º ano
Atividade de reforço de matemática 2º anoAtividade de reforço de matemática 2º ano
Atividade de reforço de matemática 2º ano
 
Slides Lição 11, CPAD, A Realidade Bíblica do Inferno, 2Tr24.pptx
Slides Lição 11, CPAD, A Realidade Bíblica do Inferno, 2Tr24.pptxSlides Lição 11, CPAD, A Realidade Bíblica do Inferno, 2Tr24.pptx
Slides Lição 11, CPAD, A Realidade Bíblica do Inferno, 2Tr24.pptx
 
epidemias endemia-pandemia-e-epidemia (1).ppt
epidemias endemia-pandemia-e-epidemia (1).pptepidemias endemia-pandemia-e-epidemia (1).ppt
epidemias endemia-pandemia-e-epidemia (1).ppt
 
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptxTreinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
Treinamento NR 38 - CORPO PRINCIPAL da NORMA.pptx
 
Testes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdfTestes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdf
 
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
 
Cartinhas de solidariedade e esperança.pptx
Cartinhas de solidariedade e esperança.pptxCartinhas de solidariedade e esperança.pptx
Cartinhas de solidariedade e esperança.pptx
 

Introdução a programação Orientada a Objeto

  • 1. Introdução a Programação Orientada a Objetos Programação em Java
  • 2. Desenvolvimento de Software tradicional Programas Processos dados 2/32
  • 3. Enfoque a programas  Visão tradicional usa perspectiva de algoritmo  O principal bloco de construção é o procedimento ou função  Conduz o foco de atenção para questões referentes ao controle e a decomposição de algoritmos maiores em outros menores  Modelagem de dados divide as informações em tabelas, criando mecanismos para junção posterior 3/32
  • 4. Desenvolvimento Orientado a Objetos Visualiza e representa o mundo real como um conjunto de objetos que interagem entre si para que determinadas operações sejam realizadas. Motorista Carro Parar 4/32
  • 5. Desenvolvimento Orientado a Objetos Conta corrente  Objetos do mundo real transformam-se em objetos no deposito() software. saldo  Programação orientada a objetos é freqüentemente referenciada como um “novo” paradigma de programação.  Viabiliza a montagem de sistemas a partir de componentes. 5/32
  • 6. Exemplo  Você resolve jantar numa pizzaria.  Existem vários objetos na pizzaria:  Pizza  Mesa  Garçom, etc....  Cada objeto tem características que o descrevem:  Mesa redonda ou retangular  Mesa desocupada ou não 6/32
  • 7. Criação dos objetos  Desenvolver uma aplicação no paradigma OO implica em modelar os objetos existentes no mundo real no sistema em desenvolvimento.  Objetos existentes no mundo real podem ser complexos, tornando necessário abstrair as características relevantes de cada entidade para o sistema em desenvolvimento  O processo de abstração é fundamental para o desenvolvimento de softwares orientados a objetos. 7/32
  • 8. Abstração Eliminação do irrelevante e amplificação do essencial 8/32
  • 9. Abstração  É o mecanismo que nos permite representar uma realidade complexa em termos de um modelo simplificado, de modo que detalhes irrelevantes possam ser suprimidos.  Processo de filtragem de detalhes sem importância do objeto, para que apenas as características apropriadas que o descrevem permaneçam. 9/32
  • 10. Exemplo – abstração Registros Registros Registros de oficina em casa Detran placa, conserto, Km/l, Identificação, pagamento, etc.. manutenção, etc impostos, placa, etc.. 10/32
  • 11. Objetos  Um objeto é qualquer coisa, real ou abstrata, sobre a qual armazenamos dados e operações que manipulam tais dados  Unidade básica de modularização do sistema na abordagem OO  Um objeto é um ente independente, composto por:  atributos, isto é, características ou propriedades que definem o objeto  comportamento, isto é, um conjunto de ações pré-definidas (denominada métodos), através das quais o objeto responderá à demanda de processamento por parte de outros objetos 11/32
  • 12. Desenvolvimento tradicional x orientado a objetos Programa Programa Processos Classes Atributos Dados Operações 12/32
  • 13. Classes  Classes: “fábricas” de objetos.  Exemplificando, temos que Pessoa é uma classe e João é um objeto (instância) da classe Pessoa.  Um carro é uma classe; “meu carro” é um objeto.  Objetos similares são agrupados em classes 13/32
  • 14. Classes – Fábrica de objetos. Definição da classe 14/32
  • 15. Mensagens  A POO identifica uma abordagem em que o programador visualiza seu programa em execução em termos de objetos que se comunicam através de trocas de mensagens  Mensagem - composta por um nome e por parâmetros (opcional) Cliente Conta debite(50R$) debite 15/32
  • 16. Mensagens  Objetos interagem enviando mensagens uns para os outros;  O objeto que receber a mensagem responderá através da seleção e execução de um método que faz parte de seu comportamento;  Após a execução, o controle volta para o objeto que enviou a mensagem. 16/32
  • 17. Classes e objetos em Java Estrutura de uma classe em Java Definição da [acesso] class NomeDaClasse classe { Atributos Construtores O conteúdo da Métodos classe } 17/32
  • 18. Classes e objetos em Java Métodos de uma classe em Java  Definem as operações que podem ser invocadas em um objeto.  Podem receber parâmetros ou não. public String getNomeCurso() public void setNomeCurso(String nome)  O cabeçalho define a assinatura do método. 18/32
  • 19. Classes e objetos em Java Atributos de uma classe em Java  Atributos armazenam valores public class CursoGraduacao { para um objeto. private String nomeCurso; private int qtd_periodos;  Eles também são conhecidos como variáveis de instâncias. Construtor e métodos omitidos. }  Atributos definem o estado de um objeto. Modificador de Nome da visibilidade Tipo variável private String nomeCurso; 19/32
  • 20. Exemplo public class Produto { private int codigo; private String nome; public String getNome() { return nome; } public void setNome(String nome_produto) { nome = nome_produto; } } 20/32
  • 21. Classes e objetos em Java Construção de objetos em Java  Realizada com a palavra Declaração do Objeto real reservada New. tipo da variável Variável criado  Processo conhecido como criação de uma instância Produto p = new Produto(); de uma classe.  Tipo da variável pode diferir do objeto realmente criado (desde que estejam relacionados por herança). 21/32
  • 22. Construtores  Da mesma forma que com EX: variáveis comuns, é possível inicializar um public Produto(int cod, String nome_prod) objeto logo ao construí-lo; { codigo = cod;  Construtores inicializam nome = nome_prod; um objeto. }  Eles têm o mesmo nome das suas classes. int cod = 341278; String prod = “Computador MSX Expert”;  Eles freqüentemente recebem valores de Produto p = new Produto(cod, prod); parâmetros externos para definir os atributos. 22/32
  • 23. Classes e objetos em Java  Construtores:  Pode existir mais de um construtor em uma classe;  Caso não seja definido nenhum construtor, o compilador cria o construtor padrão, sem parâmetros;  O construtor padrão inicializa os atributos de classe para seus valores padrões.  Caso seja definido qualquer construtor, o construtor padrão não será adicionado pelo compilador;  Caso se tenha interesse que a classe ainda possua um construtor sem parâmetros, é necessário declará-lo explicitamente. 23/32
  • 24. A Referência this  Métodos de instância EX: recebem um argumento chamado this que é uma Class Produto { referência ao objeto corrente. private int codigo;  O uso explícito do this é private String nome; necessário quando:  o nome de um parâmetro public Produto(int codigo, String nome) do método for o mesmo { de uma variável de this.codigo = codigo; instância; this.nome = nome;  desejamos passar uma } referência do objeto corrente como parâmetro para outro método. 24/32
  • 25. Introdução a Programação Orientada a Objetos Programação em Java Prof. Maurício Braga

Notas do Editor

  1. Programação orientada a objetos com Java
  2. Programação orientada a objetos com Java
  3. Programação orientada a objetos com Java
  4. Programação orientada a objetos com Java
  5. Programação orientada a objetos com Java
  6. Programação orientada a objetos com Java
  7. Programação orientada a objetos com Java
  8. Programação orientada a objetos com Java
  9. Programação orientada a objetos com Java
  10. Programação orientada a objetos com Java