O documento discute os principais conceitos da programação orientada a objetos, incluindo classes, objetos, herança, encapsulamento e polimorfismo. Define classe como um projeto do objeto e objeto como uma instância de uma classe. Explora como herança permite que classes herdem atributos e métodos de outras classes.
2. Introdução
De acordo com Furlan (2004:): a tecnologia de objetos apresentam
comportamentos chaves que fundamentam o enfoco do processo de
modelagem e desenvolvimento. Rumbaugh define a orientação a objetos como
“uma nova maneira de pensar os problemas utilizando modelos organizados a
partir de conceitos do mundo real.” Entretanto é de fato que,
Orientação a Objetos é o processo de construção de modelos do domínio do
problema, identificando e especificando um conjunto de objetos que interagem
e compartam-se conforme os requisitos estabelecidos para o sistema.
2
3. O que é Orientação a Objetos?
Orientação a objetos nada mais é um paradigma de desenvolvimento de
software que tem como objetivo aproximar o mundo real do mundo virtual,
a ideia é simular o mundo real dentro do computador, afinal nosso mundo
é composto de objetos.
3
4. O que é uma Classe?
Representa-se a classe como um projeto do objeto, ou seja, objeto é a instancia
de uma classe, antes de ser criado um objeto deve-se definir a classe na qual
ele pertence. A partir da classe podemos construir objetos na memória do
computador que executa a aplicação.
4
Cachorro
Tamanho: int
Raça: string
Latir ( ) método
Tipo
Classe
Atributos
Variáveis
Ações
Métodos
5. O que é objeto?
Objeto é a instancia de uma classe, cria-se um objeto após definir uma classe
para o mesmo. Na classe cachorro pode-se ter vários objetos, cada objeto pode
possuir um atributo diferente.
5
Atributos são variáveis da classe
Tamanho: 50cm
Raça: buldog
Cor: marrom
orelha
patas
rabo
6. Métodos
Métodos são ações que uma classe possui.
6
Ações (Métodos)
Fazer xixi
comer
correr
brincar
latir
dormir
8. 8
É possível criar vários objetos em uma só classe. No exemplo da classe
cachorro, foi definido outros objetos com atributos diferentes
comportamentos diferentes, mas do mesmo jeito não deixa de ser um objeto.
O conceito disso em orientação a objetos isso é chamado de código reuso,
ou seja, reutilização de código. Objetos trocam mensagem entre si, objetos
trocam mensagem entre si e pode trocar atributo de outro objeto
9. Herança
O conceito de Herança é um dos principais pilares na orientação a objetos, ou
seja, qualquer linguagem orientada a objetos, possui herança. As vantagens da
utilização de herança pode diminuir a quantidade de códigos escrito no inicio do
desenvolvimento do projeto. É chamada de Subclasse uma classe que herda os
membros de uma classe superior á ela, sendo ela a Superclasse.
Superclasse -> fornece membros a outras classes
Subclasse -> herda membros da subclasse
9
12. 12
Encapsulamento
O encapsulamento significa separar o programa em partes o mais isoladas
possível, ou seja, proteger os atributos não deixando ser visível a outras
classes. O encapsulamento protege o acesso direto (referências) aos
atributos de uma instância fora da classe onde estes foram declarados,
permite determinar a forma como os membros da classe serão expostos.
Exemplo: Pode ser determinado um o tipo de acesso para um determinado
método usado que é usado em um software inteiro para que apenas uma
equipe possa mexe-lo, ou seja, dependendo da regra de negócio isolar esse
método para ter um melhor controle sobre o determinado método.
13. O membro não pode ser acessado fora da classe,
nem mesmo por outras classes derivadas da classe
base.
13
private
protected
internal
Protected-internal
public
O membro não pode ser acessado fora da classe,
porém o membro está disponível para
outras classes derivadas da classe base.
O membro só é visível na unidade de código onde o
mesmo está definido. É um meio termo entre public
e protected, uma vez que o membro pode ser
acesso por todas as classes definidas na mesma
unidade.
Torna o membro acessível de fora da definição da
classe.
Quer tipo de código a partir de derivados ou de
código da mesma assembleia. Combinação de
protegidos ou internos.
14. Polimorfismo
Em orientação a objetos polimorfismo é a capacidade que os objetos
possuem, de agir de forma quase totalmente diferenciada mesmo que
possuem a mesma origem. Polimorfismo significa muitas formas, pode se
enviar uma mensagem para diferentes objetos e fazê-los responder da
maneira certa.
Sobrecarga de método -> A utilização da sobrecarga de métodos realiza
a tarefa com distintos parâmetros de entrada. Ex: posso ter dois métodos
chamado com o mesmo nome mas com comportamentos diferentes e
parâmetros diferentes.
Sobrescrita de método -> Métodos com o mesmo nome, mesma
assinatura, comportamentos diferentes, mas em classes diferentes e
originadas de uma classe pai.
14