• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Aula 4   acessibilidade
 

Aula 4 acessibilidade

on

  • 950 views

 

Statistics

Views

Total Views
950
Views on SlideShare
950
Embed Views
0

Actions

Likes
0
Downloads
16
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Aula 4   acessibilidade Aula 4 acessibilidade Presentation Transcript

    • Desenvolvimento de Software II Java  Banco de dados JODBC Aula 4: Acessibilidade e Herança Profa Ms.Larissa Pavarini da Luz larissapavarinidaluz@yahoo.com.br
    • AcessibilidadeAcessibilidade ou Visibilidade ouEncapsulamento, conhecidos como “data hiding”,é um conceito bastante importante em orientação aobjetos.São maneiras de restringir o acesso as declaraçõesde uma classe e a própria classe  Isto é feito através do uso das palavras reservadas public, private e protected que são qualificadores.
    • AcessibilidadePor que restringir o acesso a certas partes de umaclasse? Deve-se fornecer ao usuário, cliente de uma classe, o necessário e somente o necessário para que ele tire proveito da funcionalidade desta classe. Os detalhes devem ser omitidos, somente a lista de operações a qual uma classe deve atender fica visível.
    • AcessibilidadeO Java possui três especificadores de acessoexplícitos e um especificador implícito (public, private e protected) (package).
    • AcessibilidadeEspecificadores Nível Indica que o campo ou o método public Público Pode ser usado livremente pelas instâncias da classe protected Protegido Só pode ser usado na implementação de subclasses package Pacote Só pode ser usado por instâncias dentro do mesmo pacote private privado Não pode ser usado fora da implementação da própria classe
    • AcessibilidadeCom estes especificadores se definem campos emétodos de uso livre (public) ou ocultos (private),evitando seu uso.Também permitem indicar quais elementos daclasse poderão ser empregados na construção denovas subclasses (protected) através da herança.A omissão de especificadores subentende o nívelpacote (package)
    • Exemplo 01
    • Exemplo 01
    • Exercício 01A partir do exercícioCalculo_geometrico.java fazer as seguintesmudanças: Crie atributos do tipo private nas classes Area_geom.java e Vol_geom.java e crie métodos private que tratem desses atributos de tal forma que quando retornar o resultado, seja retornado pelo método public já criado.
    • HerançaExemplos e exercícios dados até agora  é necessária a criação de duas ou mais classes distintas mas com muitas características em comum.Ao invés de criar estas classes e duplicar suasvariáveis e métodos: pode-se usar um conceito de POO  Herança que permite que uma classe herde de outra algumas variáveis e métodos reduzindo a necessidade de duplicação.
    • HerançaSempre se pensa em objetos como especializações deoutros objetos: Metal precioso Metal Metais preciosos - metais Carro esportivo Carro Carros esportivos - carros Livro de romance Livro Livros de romance – livros ContaSubclasse, superclasse e diagrama Bancária de hierarquia de classe Conta Poupança Aplicação Corrente
    • HerançaHerança entre classes em Java é declaradausando a palavra-chave extends.Para que uma classe D herde as variáveis emétodos da classe C, declara-se class D extends C.
    • HerançaSó é permitida a herança de uma classe para outra (ou seja,não existem mecanismos diretos para herança múltipla emJava), mas é possível termos classes que herdamindiretamente de outras através da herança em cascata: aclasse E pode herdar das classes C e D se a classe E herdarda D e esta, por sua vez, herdar da classe C.Herança de classes funciona em um sentido somente: Aclasse Filho pode herdar da classe Pai e acrescentarmétodos e variáveis próprias, mas estas somente valerãopara a classe Filho - a classe Pai não sofrerá modificaçõesnem poderá usar o que foi declarado dentro da classeFilho.
    • Herança e Subclasses Relacionamento ‘é-um’ X Relacionamento ‘parte de’ Máquina Ponto Pistão Círculo Relacionamentos de subclasse são relacionamentos de classeRelacionamentos de parte ou componentes são relacionamentos entreobjetos
    • Herança e Subclasses Especialização e Generalização NoConta 123456Subclasse: uma classe que herda métodos Saldo 10000.00 e representação de uma classe existente Tempo 5.0Superclasse: uma classe da qual uma outra classe herda representação e NoConta 654321 Saldo 3300.77 métodos Objeto NoConta 162435 Saldo 23.99 Conta Bancária Conta Poupança Aplicação Corrente
    • Herança e Subclasses Aplicação – tempo (variável de instância adicional) Subclasses podem adicionar novas variáveis de instância, mas não podem remover Subclasses podem sobrepor a herança de um método de uma superclasse Métodos de implementação idêntica nas subclasses podem ser implementados uma única vez na superclasseMensagem enviadax Qual método é executadoumaContaAplicação consultarTempo método da classe ContaAplicaçãoumaContaCorrente consultarSaldo método herdado da classe ContaBancáriaumaContaPoupança consultarTempo erro – nenhum método na superclasseumaContaPoupança imprimir método herdado da classe Objeto
    • Herança e Subclasses Classe Objeto OPERAÇÕES Imprimir Classe Conta Bancária OPERAÇÕES Depositar: quantidade Retirar: quantidade ConsultarSaldoClasse Conta Corrente Classe Aplicações OPERAÇÕES OPERAÇÕES Classe Poupança Depositar: quantidade Retirar: quantidade OPERAÇÕES ConsultarTempo Retirar: quantidade
    • Herança - protectedProtected – protegido Só pode ser usado na implementação de subclasses Apenas utilizado com herança Parecido com o private, porém a classe que herdar a classe que possui métodos ou atributos protegidos os herdará também.
    • ExemploBanco.java
    • Conta.java
    • Conta_Poupança.java
    • Exercício 2A partir da estrutura apresentada nopróximo slide, crie as respectivas classesutilizando o conceito de herança
    • Exercício 2 Classe Objeto_Veículo Classe Veículo OPERAÇÕES Atributos e métodosClasse Terrestre Classe Aquática OPERAÇÕES OPERAÇÕES Atributos e Classe Aéreo Atributos e métodos métodos OPERAÇÕES Atributos e métodos
    • Exercício 2Veículo – possíveis atributos Velocidade Máxima Capacidade de carga Quantidade de pessoas Ano de fabricação Cor Combustível Fabricante
    • Exercício 2Veículo – possíveis métodos Atribuir_Velocidade_Máxima(double valor) Atribuir_Capacidade de carga Atribuir_Quantidade de pessoas Atribuir_Ano de fabricação Atribuir_Cor Atribuir_Combustível Atribuir_Fabricante
    • Exercício 2Veículo – possíveis métodos Apresentar_Velocidade_Máxima(double valor) Apresentar_Capacidade de carga Apresentar_Quantidade de pessoas Apresentar_Ano de fabricação Apresentar_Cor Apresentar_Combustível Apresentar_Fabricante
    • Exercício 2Terrestre – possíveis atributos Número de eixos Tração Quantidade de portas Tipo Quilometragem (Km)
    • Exercício 2Terrestre – possíveis métodos Atribuir Mostrar
    • Exercício 2Aéreo – possíveis atributos Tipo de propulsão – hélice, turbina, gás (balão) Boolean asas Tamanho Milhagem Tipo de uso – particular, público, militar Empuxo – potência de decolagem Tipo de decolagem – vertical ou horizontal
    • Exercício 2Aéreo – possíveis métodos Atribuir Mostrar
    • Exercício 2Aquático – possíveis atributos Tipo de propulsão – hélice, remo,vela Milhagem marítimas Quantidade de coletes salva vidas Tamanho – pés Tipo – pesca, passeio
    • Exercício 2Aquático – possíveis métodos Atribuir_ Mostrar