Criou página com '* '''Objetos''' <br> center <br> * '''Conceitos sobre Objetos''' <br> * 1. '''Abstração''': ressaltar os aspectos essenciais de um dado obje...'
 
 
(6 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 1: Linha 1:
* '''Objetos'''
= Objetos =
 
<br>
<br>


Linha 9: Linha 8:




* '''Conceitos sobre Objetos'''
== Conceitos sobre Objetos ==
 
<br>
<br>


Linha 47: Linha 45:




* '''Exemplos'''
== Exemplos ==
 
<br>
<br>


Linha 71: Linha 68:




'''Polimorfismo'''
= Polimorfismo =
 
<br>
<br>


 
* Permite que um método produza resultados diferentes dependendo do objeto ao qual é aplicado.
* Permite a criação de várias classes com interfaces idênticas, porém objetos e implementações diferentes
* A mesma invocação pode produzir 'muitas formas' de resultados
 
<br>
<br>


Linha 92: Linha 87:
<br>
<br>


= Encapsulamento =
<br>
Exemplo:
<br>


'''Exercícios:'''
* Classe: Conta
* Atributos: Conta, Saldo, ...
* Visibilidade: Pública
* Método: AtualizarSaldo
** Como o atributo Saldo esta como publico, ou seja, é acessivel de fora da classe, nada impede de algum outro programador que esteja envolvido no projeto possa executar algo como: ... Somar 1.000.000,00 ao saldo.
<br>


* Classe: Conta
* Atributos: Conta, Saldo, ...
* Visibilidade: Privada
* Método: AtualizarSaldo
** Se alterarmos os atributos da classe para privado não haverá acesso direto ao atributo, só deixando esses acessíveis de dentro da classe. Assim será "obrigatório" o uso do método AtualizarSaldo para alterar o valor de Saldo.
<br>
<br>


= Exercícios =
<br>


1) Dentro do problema desenvolvido no seu trabalho de grupo, defina:
* a) Um objeto
* b) Os atributos deste objeto
* c) As operações neste objeto
* d) Possíveis polimorfismos em cima do objeto.


# Dentro do problema desenvolvido no seu trabalho de grupo, defina:
## Um objeto
## Os atributos deste objeto
## As operações neste objeto
## Possíveis polimorfismos em cima do objeto.
<br>
<br>




[[Arquivo:Polimorfismo.png|center]]
[[Arquivo:Polimorfismo.png|center]]
<br>
<br>
<br>

Edição atual tal como às 02h09min de 26 de outubro de 2011

Objetos





Conceitos sobre Objetos



  • 1. Abstração: ressaltar os aspectos essenciais de um dado objeto, descartando aspectos desnecessários



  • 2. Atributos: uma propriedade de um objeto identificada por um nome. Atributos são valores dos dados que caracterizam os objetos.Um atributo tem um valor único para um objeto



  • 3. Operação: um serviço que é requisitado a um objeto, que é parte de seu comportamento em resposta à solicitações externas. Uma operação pode ter parâmetros. De forma simples, operação é uma ação ou transformação realizada por um objeto ou sofrido por ele.



  • 4. Encapsulamento de informações:
    • Um objeto contem informações que não são acessíveis a outros objetos



  • 5. Mensagens: objetos se comunicam através de mensagens, isto é,sinais enviados de um objeto a outro, requisitante de um serviço,através da execução de uma operação pelo objeto requisitado



  • 6. Polimorfismo: várias formas, ou seja, refere-se a vários comportamentos que uma mesma operação pode assumir, assim como a capacidade de uma variável referir-se a diferentes objetos,que preenchem certas responsabilidades em função da mensagem que lhes é passada.




Exemplos



  • 1. Abstração:
    • Objeto: Aluno
    • Abstração: Visualizando o aluno como objeto de um sistema acadêmico



  • 2. Atributos:
    • Atributos: Matrícula, Nome, Data de Nascimento, Cor, Estado Civil, Identidade, Endereço, CEP, Bairro, Cidade, ...



  • 3. Operações:
    • Operações: Matricular, trancar, jubilar, solicitar empréstimo, reservar, ...




Polimorfismo


  • Permite que um método produza resultados diferentes dependendo do objeto ao qual é aplicado.
  • A mesma invocação pode produzir 'muitas formas' de resultados



  • Propriedade segundo a qual vários métodos podem existir com o mesmo nome mas com comportamento diferente
    • Ao receber uma mensagem para efetuar uma Operação, é o objeto quem determina como a operação deve ser efetuada



  • Exemplos
    • O operador “+” pode ser usado com inteiros, pontos flutuantes ou strings
    • A operação mover pode atuar diferentemente nas classes Janela e PeçadeXadrez
    • A operação Calcular_Salário atua diferentemente nas classes funcionário comissionado e funcionário assalariado


Encapsulamento


Exemplo:

  • Classe: Conta
  • Atributos: Conta, Saldo, ...
  • Visibilidade: Pública
  • Método: AtualizarSaldo
    • Como o atributo Saldo esta como publico, ou seja, é acessivel de fora da classe, nada impede de algum outro programador que esteja envolvido no projeto possa executar algo como: ... Somar 1.000.000,00 ao saldo.


  • Classe: Conta
  • Atributos: Conta, Saldo, ...
  • Visibilidade: Privada
  • Método: AtualizarSaldo
    • Se alterarmos os atributos da classe para privado não haverá acesso direto ao atributo, só deixando esses acessíveis de dentro da classe. Assim será "obrigatório" o uso do método AtualizarSaldo para alterar o valor de Saldo.


Exercícios



  1. Dentro do problema desenvolvido no seu trabalho de grupo, defina:
    1. Um objeto
    2. Os atributos deste objeto
    3. As operações neste objeto
    4. Possíveis polimorfismos em cima do objeto.