SlideShare uma empresa Scribd logo
1 de 31
Baixar para ler offline
Aula de Java 04




     UNIDADE-SERRA
    Prof. Moisés Omêna
Sobrecarga de Construtores
public class Professor
{
  // instance variables - replace the example below with your own
  private int codigo;
  private String nome;
  private String disciplina;
  private String turno;

    public Professor()
    {
    }

     public Professor(int cod, String nom){
     this.codigo = cod;
     this.nome= nom;
    }
}
Classes - UML
Classes
Em termos de POO para poder tratar os
 objetos começamos criando classes , neste
 caso irei criar a classe chamada Cachorro.

"Uma classe representa um conjunto de
  objetos que possuem comportamentos e
  características comuns".
Classes - UML
"Na UML o nome de uma classe é um texto
  contendo letras e dígitos. UML sugere
  capitalizar todas as primeiras letras de
  cada palavra no nome (ex.: ``Lugar'',
  ``DataReserva'').
É melhor também manter nomes de classe
  no singular, classes por default ``contem''
  mais de um objeto, o plural é implícito.".

                         [Nicolas Anquetil]
Propriedades e Métodos
quando definimos uma classe precisamos definir
   duas coisas:

  Propriedades - Informações específicas relacionadas a
     uma classe de objeto. São as características dos
     objetos que as classes representam. Ex Cor , altura ,
     tamanho , largura , etc...
  Métodos: São ações que os objetos de uma classe
     podem realizar. Ex: Latir , correr , sentar , comer, etc.
Classes possibilitam
um modelo para criar quantos objetos você desejar
 de um tipo particular

especificar a estrutura e o comportamento
  (operações) dos objetos, que são instâncias
  destas.

Criar objetos que possuirão todas as características
  e comportamentos definidos pela classe
Aqui temos Órion


Um objeto da classe Cachorro.

Em termos de POO acabamos de criar uma
 instância da classe Cachorro e a chamamos
 Órion.
Quando criamos uma nova instância de uma classe
 dizemos que estamos instanciando a classe.
Classes em UML
A representação de uma classe usa um
  retângulo dividido em três partes:


 Cachorro         Nome

 Cor
 Altura
 Tamanho          Atributos
 Peso

 Latir
 Correr
                  Métodos
 Comer
atributos e operações

Os diagrama se classes ilustram atributos e operações de
  uma classe e as restrições como que os objetos podem
  ser conectados ; descrevem também os tipos de objetos
  no sistema e os relacionamentos entre estes objetos que
  podem ser : associações e abstrações.
Visibilidade
a visibilidade dos atributos e operações em
    uma classe utiliza-se as seguintes marcas
    e significados:

  + público - visível em qualquer classe
  # protegido - qualquer descendente pode usar
  - privado - visível somente dentro da classe
Relacionamento entre classes

Os objetos tem relações entre eles: um
 professor ministra uma disciplina para
 alunos numa sala, um cliente faz uma
 reserva de alguns lugares para uma data,
 etc. Essas relações são representadas
 também no diagrama de classe.
                           [Nicolas Anquetil]
Tipos de relações
Geralmente as classes não estão sós e se relacionam entre
  si. O relacionamento e a comunicação entre as classes
  definem responsabilidades

A UML reconhece três tipos mais importantes de relações:
  dependência, associação e generalização (ou herança).

Associações : Agregação e composição
Generalização (herança)
Dependências
Representações - notação :
          Associação : São relacionamentos
            estruturais entre instâncias e
            especificam que objetos de uma classe
            estão ligados a objetos de outras
            classes.
                 A associação pode existir entre
            classes ou entre objetos. Uma
            associação entre a classe Professor e a
            classe disciplina (um professor ministra
            uma disciplina) significa que uma
            instância de Professor (um professor
            específico) vai ter uma associação com
            uma instância de Disciplina.

          Dependência - São relacionamentos de
            utilização no qual uma mudança na
            especificação de um elemento pode
            alterar a especificação do elemento
            dependente. A dependência entre
            classes indica que os objetos de uma
            classe usam serviços dos objetos de
            outra classe.
Representações - notação :
Generalização (herança : simples ou composta) - Relacionamento entre
  um elemento mais geral e um mais específico. Onde o elemento mais
  específico herda as propriedades e métodos do elemento mais geral.
  A relação de generalização também é conhecida como herança no
  modelo a objetos.

Agregação Regular - tipo de associação ( é parte de , todo/parte) onde
  o objeto parte é um atributo do todo ; onde os objetos partes somente
  são criados se o todo ao qual estão agregados seja criado. Pedidos é
  composto por itens de pedidos.

Composição - Relacionamento entre um elemento ( o todo) e outros
  elementos (as partes) onde as parte só podem pertencer ao todo e
  são criadas e destruídas com ele.
Diagrama de classes
lista todos os conceitos do domínio que serão
   implementados no sistema e as relações entre os
   conceitos.
define a estrutura do sistema a desenvolver.

O diagrama de classes não surge do nada ele é
 consequência do prévio levantamento de
 requisitos, definição de casos de usos e classes.
exemplo
Se você tivesse que desenvolver um sistema para
  automatizar um consultório dentário. As etapas básicas
  envolvidas seriam:

   – Levantamento e análise de requisitos do sistema a ser
     desenvolvido. Entrevista com o dentista(s) e com as pessoas que
     trabalham no consultório

   – Definição dos elementos do sistema : Paciente , agenda ,
     dentista , serviço , contrato , consulta , pagamento , etc..

   – Definição das classes : paciente , dentista , exame , agenda ,
     serviço

   – Definir os atributos e métodos das classes :
Após toda esta análise você chega no diagrama de classes do
 sistema (representado abaixo a título de exemplo ilustrativo)
Herança em Java
A Herança provém de uma classe que herda
  atributos e métodos de outras classes.
  Para facilitar o estudo de caso, darei um
  exemplo de um Microcomputador.
herança em orientação a objetos representa a
 implementação da generalização.
  Herança é o compartilhamento de atributos e operações entre
   classes com base em um relacionamento hierárquico.




                                                    ESPECIALIZAÇÃO
            GENERALIZAÇÃO




                                   VEÍCULOS




    UTILITÁRIOS             PASSAGEIROS   ESPORTE      PASSEIO



Ex: a subclasse Utilitário herda todos os atributos e operações da
  superclasse Veículos.
generalização e herança

1. Generalização é a relação entre uma classe e uma ou
   mais versões refinadas dessa classe.
2. A classe que está sendo refinada é chamada de
   superclasse e cada versão refinada é subclasse.
3. Os atributos e as operações da superclasse podem ser
   exibidos em suas subclasses, conseqüentemente, cada
   subclasse é considerada herdeira dos recursos da
   superclasse.
4. Você pode organizar as classes, usando a herança para
   compartilhar a estrutura comum.
5. Um link de generalização significa que uma classe pode
   herdar uma série de atributos e operações da classe pai.
Herança
1. Mecanismo        que      permite       o
   compartilhamento     de   características
   comuns a partir de uma superclasse
2. Subclasses herdam propriedades da
   Superclasse
3. Em Modelo Conceitual:
      Superclasses são Tipos
      Subclasses são Subtipos
Polimorfismo significa a capacidade de
 assumir muitas formas.
HERANÇA
Generalização - Especialização
Herança Pessoa/Professor/Aluno
Classe Pessoa
public class Pessoa {
  private int codigo;
  private int nome;

    public Pessoa () {
    }

    public int getCodigo () {
      return codigo;
    }
    public void setCodigo (int val) {
      this.codigo = val;
    }
    public int getNome () {
      return nome;
    }
    public void setNome (int val) {
      this.nome = val;
    }
}
Classe aluno
public class Aluno extends Pessoa {

private String Turma;

public Aluno () {
 }
public String getTurma () {
return Turma;
}
public void setTurma (String val) {
 this.Turma = val; }
public int getCodigo () {
return 0;
}
public void setCodigo (int val) {
}
public int getNome () {
return 0; }
public void setNome (int val) { }
}
Classe Professor
public class Professor extends Pessoa {
  private String disciplina;
  private int cargaHoraria;
  public Professor () {
  }
  public int getCargaHoraria () {
     return cargaHoraria;
  }
  public void setCargaHoraria (int val) {
     this.cargaHoraria = val;
  }
  public String getDisciplina () {
     return disciplina;
  }
  public void setDisciplina (String val) {
     this.disciplina = val;
  }
  public int getCodigo () {
     return 0;
  }
Utilizar BlueJ para criar classes abaixo
sendo que pessoa física e pessoa jurídica
herdam de pessoa, crie também os
diferentes construtores das mesmas



Pessoa
Pessoa Física
Pessoa Jurídica
Crie as classes abaixo definidas

Mais conteúdo relacionado

Mais procurados

INTRODUÇÃO FUNDAMENTOS DE SISTEMAS DE INFORMAÇÃO
INTRODUÇÃO FUNDAMENTOS DE SISTEMAS DE INFORMAÇÃOINTRODUÇÃO FUNDAMENTOS DE SISTEMAS DE INFORMAÇÃO
INTRODUÇÃO FUNDAMENTOS DE SISTEMAS DE INFORMAÇÃOEdson Lima
 
Apostila.de.redes. .cabeamento.e.estruturado
Apostila.de.redes. .cabeamento.e.estruturadoApostila.de.redes. .cabeamento.e.estruturado
Apostila.de.redes. .cabeamento.e.estruturadojpl200
 
Estrutura de Dados - Aula 01
Estrutura de Dados - Aula 01Estrutura de Dados - Aula 01
Estrutura de Dados - Aula 01thomasdacosta
 
Plant uml language_reference_guide_fr
Plant uml language_reference_guide_frPlant uml language_reference_guide_fr
Plant uml language_reference_guide_frPorfirio Vazquez
 
Banco de Dados em Grafos com Neo4J
Banco de Dados em Grafos com Neo4J  Banco de Dados em Grafos com Neo4J
Banco de Dados em Grafos com Neo4J Daniel San Martin
 
Aula 03 - Introdução aos Diagramas de Atividade
Aula 03 - Introdução aos Diagramas de AtividadeAula 03 - Introdução aos Diagramas de Atividade
Aula 03 - Introdução aos Diagramas de AtividadeAlberto Simões
 
Supriya reddy Azure Certification PPT
Supriya reddy Azure Certification PPT Supriya reddy Azure Certification PPT
Supriya reddy Azure Certification PPT SUPRIYAT9
 
UML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesUML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesRodrigo Cascarrolho
 
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 objetosLeonardo 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 objetosNécio de Lima Veras
 
Polimorfismo em java
Polimorfismo em javaPolimorfismo em java
Polimorfismo em javaManoel Afonso
 
Maven e Nexus. O que são essas ferramentas?
Maven e Nexus. O que são essas ferramentas?Maven e Nexus. O que são essas ferramentas?
Maven e Nexus. O que são essas ferramentas?Jocsa Rosendo
 
Introducao banco de dados
Introducao banco de dadosIntroducao banco de dados
Introducao banco de dadosvaniakenob
 

Mais procurados (20)

INTRODUÇÃO FUNDAMENTOS DE SISTEMAS DE INFORMAÇÃO
INTRODUÇÃO FUNDAMENTOS DE SISTEMAS DE INFORMAÇÃOINTRODUÇÃO FUNDAMENTOS DE SISTEMAS DE INFORMAÇÃO
INTRODUÇÃO FUNDAMENTOS DE SISTEMAS DE INFORMAÇÃO
 
Apostila.de.redes. .cabeamento.e.estruturado
Apostila.de.redes. .cabeamento.e.estruturadoApostila.de.redes. .cabeamento.e.estruturado
Apostila.de.redes. .cabeamento.e.estruturado
 
Servidor web
Servidor webServidor web
Servidor web
 
Estrutura de Dados - Aula 01
Estrutura de Dados - Aula 01Estrutura de Dados - Aula 01
Estrutura de Dados - Aula 01
 
Plant uml language_reference_guide_fr
Plant uml language_reference_guide_frPlant uml language_reference_guide_fr
Plant uml language_reference_guide_fr
 
Banco de Dados em Grafos com Neo4J
Banco de Dados em Grafos com Neo4J  Banco de Dados em Grafos com Neo4J
Banco de Dados em Grafos com Neo4J
 
Aula 03 - Introdução aos Diagramas de Atividade
Aula 03 - Introdução aos Diagramas de AtividadeAula 03 - Introdução aos Diagramas de Atividade
Aula 03 - Introdução aos Diagramas de Atividade
 
Supriya reddy Azure Certification PPT
Supriya reddy Azure Certification PPT Supriya reddy Azure Certification PPT
Supriya reddy Azure Certification PPT
 
Tecnologías de VoIP
Tecnologías de VoIPTecnologías de VoIP
Tecnologías de VoIP
 
Arquitetura de Software
Arquitetura de SoftwareArquitetura de Software
Arquitetura de Software
 
UML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesUML - Criando Diagramas Eficientes
UML - Criando Diagramas Eficientes
 
Modelagem de dados
Modelagem de dadosModelagem de dados
Modelagem de dados
 
Minicurso Linux
Minicurso Linux Minicurso Linux
Minicurso Linux
 
Introdução ao BD Postgre
Introdução ao BD PostgreIntrodução ao BD Postgre
Introdução ao BD Postgre
 
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
 
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
 
Paradigma Orientado a Objeto
Paradigma Orientado a ObjetoParadigma Orientado a Objeto
Paradigma Orientado a Objeto
 
Polimorfismo em java
Polimorfismo em javaPolimorfismo em java
Polimorfismo em java
 
Maven e Nexus. O que são essas ferramentas?
Maven e Nexus. O que são essas ferramentas?Maven e Nexus. O que são essas ferramentas?
Maven e Nexus. O que são essas ferramentas?
 
Introducao banco de dados
Introducao banco de dadosIntroducao banco de dados
Introducao banco de dados
 

Semelhante a Java - Herança de Construtores

Semelhante a Java - Herança de Construtores (20)

Aula sobre Diagrama Classe para a modelagem de requisitos.pptx
Aula sobre Diagrama Classe para a modelagem de requisitos.pptxAula sobre Diagrama Classe para a modelagem de requisitos.pptx
Aula sobre Diagrama Classe para a modelagem de requisitos.pptx
 
Paradigma Orientado a Objetos
Paradigma Orientado a ObjetosParadigma Orientado a Objetos
Paradigma Orientado a Objetos
 
Herança.pptx
Herança.pptxHerança.pptx
Herança.pptx
 
Preparatório uml aula2
Preparatório uml   aula2Preparatório uml   aula2
Preparatório uml aula2
 
Classes objetos
Classes objetosClasses objetos
Classes objetos
 
Orientação a Objetos
Orientação a ObjetosOrientação a Objetos
Orientação a Objetos
 
Resumo diagramas de classes
Resumo diagramas de classesResumo diagramas de classes
Resumo diagramas de classes
 
v
vv
v
 
Orientação a Objetos no Delphi - Por onde começar (I)
Orientação a Objetos no Delphi - Por onde começar (I)Orientação a Objetos no Delphi - Por onde começar (I)
Orientação a Objetos no Delphi - Por onde começar (I)
 
[CEFET][ESw] Aula 5 - Diagrama de Classe
[CEFET][ESw] Aula 5 - Diagrama de Classe[CEFET][ESw] Aula 5 - Diagrama de Classe
[CEFET][ESw] Aula 5 - Diagrama de Classe
 
Aula orientação a objetos
Aula orientação a objetosAula orientação a objetos
Aula orientação a objetos
 
Programação orientada a objetos
Programação orientada a objetosProgramação orientada a objetos
Programação orientada a objetos
 
Aula 3 -_fundamentos_sobre_aoo
Aula 3 -_fundamentos_sobre_aooAula 3 -_fundamentos_sobre_aoo
Aula 3 -_fundamentos_sobre_aoo
 
Introdução a poo
Introdução a pooIntrodução a poo
Introdução a poo
 
03 poo
03 poo03 poo
03 poo
 
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
 
Script c
Script cScript c
Script c
 
Aula classes abstratas 3º periodo uniao
Aula classes abstratas  3º periodo uniaoAula classes abstratas  3º periodo uniao
Aula classes abstratas 3º periodo uniao
 
Java7
Java7Java7
Java7
 
Relatório da uml
Relatório da umlRelatório da uml
Relatório da uml
 

Último

Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxSlides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxLuizHenriquedeAlmeid6
 
Pedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxPedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxleandropereira983288
 
Recurso Casa das Ciências: Sistemas de Partículas
Recurso Casa das Ciências: Sistemas de PartículasRecurso Casa das Ciências: Sistemas de Partículas
Recurso Casa das Ciências: Sistemas de PartículasCasa Ciências
 
Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.keislayyovera123
 
Simulado 2 Etapa - 2024 Proximo Passo.pdf
Simulado 2 Etapa  - 2024 Proximo Passo.pdfSimulado 2 Etapa  - 2024 Proximo Passo.pdf
Simulado 2 Etapa - 2024 Proximo Passo.pdfEditoraEnovus
 
ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024Jeanoliveira597523
 
Música Meu Abrigo - Texto e atividade
Música   Meu   Abrigo  -   Texto e atividadeMúsica   Meu   Abrigo  -   Texto e atividade
Música Meu Abrigo - Texto e atividadeMary Alvarenga
 
Gerenciando a Aprendizagem Organizacional
Gerenciando a Aprendizagem OrganizacionalGerenciando a Aprendizagem Organizacional
Gerenciando a Aprendizagem OrganizacionalJacqueline Cerqueira
 
DESAFIO LITERÁRIO - 2024 - EASB/ÁRVORE -
DESAFIO LITERÁRIO - 2024 - EASB/ÁRVORE -DESAFIO LITERÁRIO - 2024 - EASB/ÁRVORE -
DESAFIO LITERÁRIO - 2024 - EASB/ÁRVORE -Aline Santana
 
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptxSlides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptxLuizHenriquedeAlmeid6
 
GÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
GÊNERO TEXTUAL - TIRINHAS - Charges - CartumGÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
GÊNERO TEXTUAL - TIRINHAS - Charges - CartumAugusto Costa
 
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Mary Alvarenga
 
Modelos de Desenvolvimento Motor - Gallahue, Newell e Tani
Modelos de Desenvolvimento Motor - Gallahue, Newell e TaniModelos de Desenvolvimento Motor - Gallahue, Newell e Tani
Modelos de Desenvolvimento Motor - Gallahue, Newell e TaniCassio Meira Jr.
 
Bullying - Atividade com caça- palavras
Bullying   - Atividade com  caça- palavrasBullying   - Atividade com  caça- palavras
Bullying - Atividade com caça- palavrasMary Alvarenga
 
ELETIVA TEXTOS MULTIMODAIS LINGUAGEM VER
ELETIVA TEXTOS MULTIMODAIS LINGUAGEM VERELETIVA TEXTOS MULTIMODAIS LINGUAGEM VER
ELETIVA TEXTOS MULTIMODAIS LINGUAGEM VERDeiciane Chaves
 
Slides 1 - O gênero textual entrevista.pptx
Slides 1 - O gênero textual entrevista.pptxSlides 1 - O gênero textual entrevista.pptx
Slides 1 - O gênero textual entrevista.pptxSilvana Silva
 
D9 RECONHECER GENERO DISCURSIVO SPA.pptx
D9 RECONHECER GENERO DISCURSIVO SPA.pptxD9 RECONHECER GENERO DISCURSIVO SPA.pptx
D9 RECONHECER GENERO DISCURSIVO SPA.pptxRonys4
 

Último (20)

Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxSlides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
 
Pedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxPedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptx
 
Em tempo de Quaresma .
Em tempo de Quaresma                            .Em tempo de Quaresma                            .
Em tempo de Quaresma .
 
Recurso Casa das Ciências: Sistemas de Partículas
Recurso Casa das Ciências: Sistemas de PartículasRecurso Casa das Ciências: Sistemas de Partículas
Recurso Casa das Ciências: Sistemas de Partículas
 
Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.Época Realista y la obra de Madame Bovary.
Época Realista y la obra de Madame Bovary.
 
Simulado 2 Etapa - 2024 Proximo Passo.pdf
Simulado 2 Etapa  - 2024 Proximo Passo.pdfSimulado 2 Etapa  - 2024 Proximo Passo.pdf
Simulado 2 Etapa - 2024 Proximo Passo.pdf
 
Bullying, sai pra lá
Bullying,  sai pra láBullying,  sai pra lá
Bullying, sai pra lá
 
ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024ABRIL VERDE.pptx Slide sobre abril ver 2024
ABRIL VERDE.pptx Slide sobre abril ver 2024
 
Música Meu Abrigo - Texto e atividade
Música   Meu   Abrigo  -   Texto e atividadeMúsica   Meu   Abrigo  -   Texto e atividade
Música Meu Abrigo - Texto e atividade
 
Gerenciando a Aprendizagem Organizacional
Gerenciando a Aprendizagem OrganizacionalGerenciando a Aprendizagem Organizacional
Gerenciando a Aprendizagem Organizacional
 
DESAFIO LITERÁRIO - 2024 - EASB/ÁRVORE -
DESAFIO LITERÁRIO - 2024 - EASB/ÁRVORE -DESAFIO LITERÁRIO - 2024 - EASB/ÁRVORE -
DESAFIO LITERÁRIO - 2024 - EASB/ÁRVORE -
 
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptxSlides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
Slides Lição 4, Betel, Ordenança quanto à contribuição financeira, 2Tr24.pptx
 
GÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
GÊNERO TEXTUAL - TIRINHAS - Charges - CartumGÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
GÊNERO TEXTUAL - TIRINHAS - Charges - Cartum
 
Orientação Técnico-Pedagógica EMBcae Nº 001, de 16 de abril de 2024
Orientação Técnico-Pedagógica EMBcae Nº 001, de 16 de abril de 2024Orientação Técnico-Pedagógica EMBcae Nº 001, de 16 de abril de 2024
Orientação Técnico-Pedagógica EMBcae Nº 001, de 16 de abril de 2024
 
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
Grupo Tribalhista - Música Velha Infância (cruzadinha e caça palavras)
 
Modelos de Desenvolvimento Motor - Gallahue, Newell e Tani
Modelos de Desenvolvimento Motor - Gallahue, Newell e TaniModelos de Desenvolvimento Motor - Gallahue, Newell e Tani
Modelos de Desenvolvimento Motor - Gallahue, Newell e Tani
 
Bullying - Atividade com caça- palavras
Bullying   - Atividade com  caça- palavrasBullying   - Atividade com  caça- palavras
Bullying - Atividade com caça- palavras
 
ELETIVA TEXTOS MULTIMODAIS LINGUAGEM VER
ELETIVA TEXTOS MULTIMODAIS LINGUAGEM VERELETIVA TEXTOS MULTIMODAIS LINGUAGEM VER
ELETIVA TEXTOS MULTIMODAIS LINGUAGEM VER
 
Slides 1 - O gênero textual entrevista.pptx
Slides 1 - O gênero textual entrevista.pptxSlides 1 - O gênero textual entrevista.pptx
Slides 1 - O gênero textual entrevista.pptx
 
D9 RECONHECER GENERO DISCURSIVO SPA.pptx
D9 RECONHECER GENERO DISCURSIVO SPA.pptxD9 RECONHECER GENERO DISCURSIVO SPA.pptx
D9 RECONHECER GENERO DISCURSIVO SPA.pptx
 

Java - Herança de Construtores

  • 1. Aula de Java 04 UNIDADE-SERRA Prof. Moisés Omêna
  • 2. Sobrecarga de Construtores public class Professor { // instance variables - replace the example below with your own private int codigo; private String nome; private String disciplina; private String turno; public Professor() { } public Professor(int cod, String nom){ this.codigo = cod; this.nome= nom; } }
  • 4. Classes Em termos de POO para poder tratar os objetos começamos criando classes , neste caso irei criar a classe chamada Cachorro. "Uma classe representa um conjunto de objetos que possuem comportamentos e características comuns".
  • 5. Classes - UML "Na UML o nome de uma classe é um texto contendo letras e dígitos. UML sugere capitalizar todas as primeiras letras de cada palavra no nome (ex.: ``Lugar'', ``DataReserva''). É melhor também manter nomes de classe no singular, classes por default ``contem'' mais de um objeto, o plural é implícito.". [Nicolas Anquetil]
  • 6. Propriedades e Métodos quando definimos uma classe precisamos definir duas coisas: Propriedades - Informações específicas relacionadas a uma classe de objeto. São as características dos objetos que as classes representam. Ex Cor , altura , tamanho , largura , etc... Métodos: São ações que os objetos de uma classe podem realizar. Ex: Latir , correr , sentar , comer, etc.
  • 7. Classes possibilitam um modelo para criar quantos objetos você desejar de um tipo particular especificar a estrutura e o comportamento (operações) dos objetos, que são instâncias destas. Criar objetos que possuirão todas as características e comportamentos definidos pela classe
  • 8. Aqui temos Órion Um objeto da classe Cachorro. Em termos de POO acabamos de criar uma instância da classe Cachorro e a chamamos Órion. Quando criamos uma nova instância de uma classe dizemos que estamos instanciando a classe.
  • 9. Classes em UML A representação de uma classe usa um retângulo dividido em três partes: Cachorro Nome Cor Altura Tamanho Atributos Peso Latir Correr Métodos Comer
  • 10. atributos e operações Os diagrama se classes ilustram atributos e operações de uma classe e as restrições como que os objetos podem ser conectados ; descrevem também os tipos de objetos no sistema e os relacionamentos entre estes objetos que podem ser : associações e abstrações.
  • 11. Visibilidade a visibilidade dos atributos e operações em uma classe utiliza-se as seguintes marcas e significados: + público - visível em qualquer classe # protegido - qualquer descendente pode usar - privado - visível somente dentro da classe
  • 12. Relacionamento entre classes Os objetos tem relações entre eles: um professor ministra uma disciplina para alunos numa sala, um cliente faz uma reserva de alguns lugares para uma data, etc. Essas relações são representadas também no diagrama de classe. [Nicolas Anquetil]
  • 13. Tipos de relações Geralmente as classes não estão sós e se relacionam entre si. O relacionamento e a comunicação entre as classes definem responsabilidades A UML reconhece três tipos mais importantes de relações: dependência, associação e generalização (ou herança). Associações : Agregação e composição Generalização (herança) Dependências
  • 14. Representações - notação : Associação : São relacionamentos estruturais entre instâncias e especificam que objetos de uma classe estão ligados a objetos de outras classes. A associação pode existir entre classes ou entre objetos. Uma associação entre a classe Professor e a classe disciplina (um professor ministra uma disciplina) significa que uma instância de Professor (um professor específico) vai ter uma associação com uma instância de Disciplina. Dependência - São relacionamentos de utilização no qual uma mudança na especificação de um elemento pode alterar a especificação do elemento dependente. A dependência entre classes indica que os objetos de uma classe usam serviços dos objetos de outra classe.
  • 15. Representações - notação : Generalização (herança : simples ou composta) - Relacionamento entre um elemento mais geral e um mais específico. Onde o elemento mais específico herda as propriedades e métodos do elemento mais geral. A relação de generalização também é conhecida como herança no modelo a objetos. Agregação Regular - tipo de associação ( é parte de , todo/parte) onde o objeto parte é um atributo do todo ; onde os objetos partes somente são criados se o todo ao qual estão agregados seja criado. Pedidos é composto por itens de pedidos. Composição - Relacionamento entre um elemento ( o todo) e outros elementos (as partes) onde as parte só podem pertencer ao todo e são criadas e destruídas com ele.
  • 16. Diagrama de classes lista todos os conceitos do domínio que serão implementados no sistema e as relações entre os conceitos. define a estrutura do sistema a desenvolver. O diagrama de classes não surge do nada ele é consequência do prévio levantamento de requisitos, definição de casos de usos e classes.
  • 17. exemplo Se você tivesse que desenvolver um sistema para automatizar um consultório dentário. As etapas básicas envolvidas seriam: – Levantamento e análise de requisitos do sistema a ser desenvolvido. Entrevista com o dentista(s) e com as pessoas que trabalham no consultório – Definição dos elementos do sistema : Paciente , agenda , dentista , serviço , contrato , consulta , pagamento , etc.. – Definição das classes : paciente , dentista , exame , agenda , serviço – Definir os atributos e métodos das classes :
  • 18. Após toda esta análise você chega no diagrama de classes do sistema (representado abaixo a título de exemplo ilustrativo)
  • 19. Herança em Java A Herança provém de uma classe que herda atributos e métodos de outras classes. Para facilitar o estudo de caso, darei um exemplo de um Microcomputador.
  • 20. herança em orientação a objetos representa a implementação da generalização. Herança é o compartilhamento de atributos e operações entre classes com base em um relacionamento hierárquico. ESPECIALIZAÇÃO GENERALIZAÇÃO VEÍCULOS UTILITÁRIOS PASSAGEIROS ESPORTE PASSEIO Ex: a subclasse Utilitário herda todos os atributos e operações da superclasse Veículos.
  • 21. generalização e herança 1. Generalização é a relação entre uma classe e uma ou mais versões refinadas dessa classe. 2. A classe que está sendo refinada é chamada de superclasse e cada versão refinada é subclasse. 3. Os atributos e as operações da superclasse podem ser exibidos em suas subclasses, conseqüentemente, cada subclasse é considerada herdeira dos recursos da superclasse. 4. Você pode organizar as classes, usando a herança para compartilhar a estrutura comum. 5. Um link de generalização significa que uma classe pode herdar uma série de atributos e operações da classe pai.
  • 22. Herança 1. Mecanismo que permite o compartilhamento de características comuns a partir de uma superclasse 2. Subclasses herdam propriedades da Superclasse 3. Em Modelo Conceitual: Superclasses são Tipos Subclasses são Subtipos
  • 23. Polimorfismo significa a capacidade de assumir muitas formas.
  • 27. Classe Pessoa public class Pessoa { private int codigo; private int nome; public Pessoa () { } public int getCodigo () { return codigo; } public void setCodigo (int val) { this.codigo = val; } public int getNome () { return nome; } public void setNome (int val) { this.nome = val; } }
  • 28. Classe aluno public class Aluno extends Pessoa { private String Turma; public Aluno () { } public String getTurma () { return Turma; } public void setTurma (String val) { this.Turma = val; } public int getCodigo () { return 0; } public void setCodigo (int val) { } public int getNome () { return 0; } public void setNome (int val) { } }
  • 29. Classe Professor public class Professor extends Pessoa { private String disciplina; private int cargaHoraria; public Professor () { } public int getCargaHoraria () { return cargaHoraria; } public void setCargaHoraria (int val) { this.cargaHoraria = val; } public String getDisciplina () { return disciplina; } public void setDisciplina (String val) { this.disciplina = val; } public int getCodigo () { return 0; }
  • 30. Utilizar BlueJ para criar classes abaixo sendo que pessoa física e pessoa jurídica herdam de pessoa, crie também os diferentes construtores das mesmas Pessoa Pessoa Física Pessoa Jurídica
  • 31. Crie as classes abaixo definidas