SlideShare une entreprise Scribd logo
1  sur  25
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

Contenu connexe

Tendances

Fundamentos e princípios do projeto orientado a objetos
Fundamentos e princípios do projeto orientado a objetosFundamentos e princípios do projeto orientado a objetos
Fundamentos e princípios do projeto orientado a objetos
Evandro Agnes
 
Curso java 05 - herança, classes e métodos abstratos
Curso java   05 - herança, classes e métodos abstratosCurso java   05 - herança, classes e métodos abstratos
Curso java 05 - herança, classes e métodos abstratos
Maurício Linhares
 
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
 
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
 
Apresentação programação orientada à objetos
Apresentação   programação orientada à objetosApresentação   programação orientada à objetos
Apresentação programação orientada à objetos
soncino
 
Diagrama de Estados
Diagrama de EstadosDiagrama de Estados
Diagrama de Estados
Maikynata
 

Tendances (20)

Diagramas de pacotes
Diagramas de pacotesDiagramas de pacotes
Diagramas de pacotes
 
Aula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de ProjetoAula 02 - UML e Padrões de Projeto
Aula 02 - UML e Padrões de Projeto
 
Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)Aula 02 - Principios da Orientação a Objetos (POO)
Aula 02 - Principios da Orientação a Objetos (POO)
 
Fundamentos e princípios do projeto orientado a objetos
Fundamentos e princípios do projeto orientado a objetosFundamentos e princípios do projeto orientado a objetos
Fundamentos e princípios do projeto orientado a objetos
 
Apresentação mvc
Apresentação mvcApresentação mvc
Apresentação mvc
 
Curso java 05 - herança, classes e métodos abstratos
Curso java   05 - herança, classes e métodos abstratosCurso java   05 - herança, classes e métodos abstratos
Curso java 05 - herança, classes e métodos abstratos
 
Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POO
 
Criação de formulários e tabelas com HTML
Criação de formulários e tabelas com HTMLCriação de formulários e tabelas com HTML
Criação de formulários e tabelas com HTML
 
HERANÇA - Programação Orientada a Objetos JAVA
HERANÇA - Programação Orientada a Objetos JAVAHERANÇA - Programação Orientada a Objetos JAVA
HERANÇA - Programação Orientada a Objetos JAVA
 
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
 
JAVA - Herança
JAVA - HerançaJAVA - Herança
JAVA - Herança
 
Curso de Node JS Básico
Curso de Node JS BásicoCurso de Node JS Básico
Curso de Node JS Básico
 
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
 
UML - Diagrama de Pacotes
UML - Diagrama de PacotesUML - Diagrama de Pacotes
UML - Diagrama de Pacotes
 
Apresentação programação orientada à objetos
Apresentação   programação orientada à objetosApresentação   programação orientada à objetos
Apresentação programação orientada à objetos
 
Estrutura de dados
Estrutura de dadosEstrutura de dados
Estrutura de dados
 
Programação Orientada A Objectos (Poo)
Programação Orientada A Objectos (Poo)Programação Orientada A Objectos (Poo)
Programação Orientada A Objectos (Poo)
 
Java Coleções
Java ColeçõesJava Coleções
Java Coleções
 
Diagrama de Estados
Diagrama de EstadosDiagrama de Estados
Diagrama de Estados
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidos
 

En vedette

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
 
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
 
Aula 02 - Programação Estruturada em JAVA
Aula 02 - Programação Estruturada em JAVAAula 02 - Programação Estruturada em JAVA
Aula 02 - Programação Estruturada em JAVA
Ivna Valença
 

En vedette (20)

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
 
Programação Orientado a Objetos
Programação Orientado a ObjetosProgramação Orientado a Objetos
Programação Orientado a Objetos
 
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
 
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
 
Aula 02 - Programação Estruturada em JAVA
Aula 02 - Programação Estruturada em JAVAAula 02 - Programação Estruturada em JAVA
Aula 02 - Programação Estruturada em JAVA
 

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

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
 
Script c
Script cScript c
Script c
Raphael
 
Aula 02 implementação objeto
Aula 02   implementação objetoAula 02   implementação objeto
Aula 02 implementação objeto
Danilo Alves
 
01 Orientacao A Objetos Programacao
01   Orientacao A Objetos   Programacao01   Orientacao A Objetos   Programacao
01 Orientacao A Objetos Programacao
taniamaciel
 

Similaire à 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
 
Construtores em Java
Construtores em JavaConstrutores em Java
Construtores em Java
 
Construtor em Java
Construtor em JavaConstrutor em Java
Construtor 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
 
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
 
01 Orientacao A Objetos Programacao
01   Orientacao A Objetos   Programacao01   Orientacao A Objetos   Programacao
01 Orientacao A Objetos Programacao
 

Dernier

PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
azulassessoria9
 
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfReta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
WagnerCamposCEA
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptx
TailsonSantos1
 
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
LeloIurk1
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
azulassessoria9
 
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdfGEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
RavenaSales1
 
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
HELENO FAVACHO
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médio
rosenilrucks
 
Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptxSlide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
edelon1
 

Dernier (20)

PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfPROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
 
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfplanejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"
 
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfReta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptx
 
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!
 
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia TecnologiaPROJETO DE EXTENSÃO I - Radiologia Tecnologia
PROJETO DE EXTENSÃO I - Radiologia Tecnologia
 
atividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdfatividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdf
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)
 
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdfGEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
 
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
PROJETO DE EXTENSÃO I - TECNOLOGIA DA INFORMAÇÃO Relatório Final de Atividade...
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médio
 
Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptxSlide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
 
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxSlides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.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

Notes de l'éditeur

  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