A maior rede de estudos do Brasil

Grátis
274 pág.
Livro - Programação Orientada a Objetos

Pré-visualização | Página 1 de 50

PROGRAMAÇÃO
ORIENTADA A OBJETOS
Evandro Zatti
Te
cn
o
lo
g
ia
P
R
O
G
R
A
M
A
Ç
Ã
O
O
R
IE
N
T
A
D
A
 A
 O
B
J
E
T
O
S
E
va
nd
ro
 Z
at
ti
Curitiba
2017
Programacao 
Orientada a 
Objetos
Evandro Zatti
çã
Ficha Catalográfica elaborada pela Fael. Bibliotecária – Cassiana Souza CRB9/1501
Z38p Zatti, Evandro
 Programação orientada a objetos / Evandro Zatti. – Curitiba: 
Fael, 2017. 
272 p.: il.
ISBN 978-85-60531-79-0
1. Linguagem de programação I. Título 
CDD 005.117 
Direitos desta edição reservados à Fael.
É proibida a reprodução total ou parcial desta obra sem autorização expressa da Fael.
FAEL
Direção Acadêmica Francisco Carlos Sardo
Coordenação Editorial Raquel Andrade Lorenz
Revisão Editora Coletânea
Projeto Gráfico Sandro Niemicz
Capa Vitor Bernardo Backes Lopes
Imagem da Capa Shutterstock.com/Sai Yeung Chan
Arte-Final Evelyn Caroline dos Santos Betim
Sumário
 Carta ao Aluno | 5
1. Histórico e Paradigmas da Programação | 7
2. Fundamentos da Orientação a Objetos | 37
3. Atributos e Propriedades | 65
4. Mensagens e Métodos | 85
5. Construtor e Destrutor | 113
6. Polimorfismo e Sobrecarga | 137
7. Herança | 165
8. Classes Abstratas, Interfaces e Classes Finais | 193
9. Tratamento de Exceções | 219
10. Padrões de Projeto | 241
 Conclusão | 265
 Referências | 267
Prezado(a) aluno(a),
A programação de computadores existe desde que existe 
o próprio computador. Porém, com o passar do tempo, ela foi 
sendo melhor estudada, repensada e aperfeiçoada. Novas lingua-
gens e novos compiladores foram sendo apresentados ao mercado, 
buscando a criação de sistemas sólidos e robustos mas, ao mesmo 
tempo, de fácil manutenção, acompanhando a crescente demanda 
pela digitalização e automação das tarefas rotineiras.
Carta ao Aluno
– 6 –
Programação Orientada a Objetos
Este livro foi criado para servir de apoio aos programadores que pos-
suem conhecimentos essenciais da programação estruturada, e que preten-
dem adentrar o paradigma da orientação a objetos. Porém, se você nunca 
teve contato algum com a programação de computadores, ele pode também 
ajudá-lo a construir uma base sólida para seu aprendizado, pois ele apresenta 
o conteúdo de forma sequencial, simplificada e com bastante apelo prático.
O conteúdo deste livro foi cuidadosamente elaborado para, além de 
apresentar os fundamentos desde o início da programação, ser atual e compa-
tível com o mercado de trabalho, com o meio acadêmico, ou até mesmo para 
ser utilizado como base para estudos na preparação para concursos.
Espero que esta obra seja agradável e que desperte o programador que 
existe em você!
1
Histórico e Paradigmas 
da Programação
Quando estava no ensino médio, tive uma professora de Bio-
logia que chegou no primeiro dia de aula e pediu que trouxéssemos, 
em todas as aulas, um caderninho de anotações. Segundo ela, a par-
tir dali, para cada novo conceito que nos fosse apresentado, iríamos 
anotar a origem da palavra, identificando o radical, prefixo e sufixo. 
Naquele momento, achei exagero. Porém, com o passar do tempo, 
percebi que aquilo iniciava a construção de um dos mais fortes ali-
cerces para minha carreira acadêmica: a etimologia das palavras. A 
partir daquele dia, criei por hábito, sempre que me fosse apresen-
tando um conceito novo, seguir como primeiro passo a busca pela 
origem da palavra, do termo, do conceito. Por isso faço questão de 
apresentar a você um pouco da história e das origens. Programar é 
o ato de criar um programa, e um programa é uma sequência de 
acontecimentos. Você pode ter um programa de televisão, de uma 
cerimônia, de uma competição esportiva. Você pode programar um 
computador. E é seguindo o princípio de busca às origens que este 
capítulo apresenta um histórico da programação de computadores, 
estabelecendo conexão com a evolução do computador, e também 
classificando as linguagens de programação, para que você tenha 
base sólida para fazer suas escolhas no âmbito profissional.
Programação Orientada a Objetos
– 8 –
1.1 No princípio eram engrenagens, 
chaves e botões
Se observarmos a evolução do computador, perceberemos que fica cada 
vez mais difícil dissociar qualquer equipamento eletrônico de um computa-
dor. Se, no passado, os televisores analógicos nos permitiam funções básicas 
de aumentar ou diminuir volume e a troca de canais, os aparelhos mais 
modernos nos trazem uma infinidade de aplicativos de entretenimento, que 
vão muito além da escolha de um conteúdo televisivo. São equipamentos 
que executam uma série de funcionalidades que nada mais são do que 
programas em execução. O mesmo acontece com os equipamentos de som 
que, aliás, como muitos outros equipamentos independentes, estão sendo 
substituídos gradativamente pelos dispositivos multifuncionais, como os 
smartphones e tablets.
Estes exemplos que citei, assim como um vasto número de aparelhos ele-
trônicos digitais, são nada menos do que microcomputadores, compostos por 
hardware e software. O hardware é o conjunto de suas peças físicas, e o sof-
tware é o conjunto dos aplicativos, isto é, dos programas que são executados 
para o desempenho das tarefas. O computador é um equipamento resultante 
de inúmeras evoluções tecnológicas. Não vem ao caso aqui discutir patentes 
ou criações de seus componentes, mas sim, resgatar um breve histórico sobre 
seu funcionamento, diretamente relacionado à programação, que é o foco de 
nosso estudo.
Do ábaco à era digital, o funcionamento básico dos computadores sem-
pre residiu sobre o sistema de numeração posicional. No ábaco, de operação 
exclusivamente manual, cada bolinha tinha um valor, cujo peso mudava em 
relação ao eixo nas quais deslizavam. Nas calculadoras mecânicas, as engre-
nagens iam se conectando umas nas outras, assim como em um relógio de 
corda, estabelecendo a relação de peso entre cada uma delas. Para tarefas sim-
ples, como as operações básicas matemáticas, as máquinas analógicas aten-
diam perfeitamente. O problema é que o aumento da complexidade do cál-
culo que se deseja resolver requer mais e mais engrenagens.
Charles Babbage, um matemático e engenheiro mecânico inglês pro-
pôs, ainda no século XIX, a chamada máquina diferencial (difference engine), 
uma máquina baseada em engrenagens, para cálculo de polinômios, cujo pro-
– 9 –
Histórico e Paradigmas da Programação
jeto evoluiria para a máquina analítica (analytical engine), um computador 
analógico programável (CAMPBELL-KELLY, 2004).
O projeto era tão complexo e possivelmente caro, que jamais foi cons-
truído para uso comercial. Porém, para ser executado por esta máquina, a 
escritora e também matemática britânica, Ada Augusta King, condessa de 
Lovelace, criou o primeiro algoritmo da história da programação, além de ter 
ajudado a documentar a máquina analítica.
Pela invenção da máquina, que serviria de base para construção dos 
computadores que vieram depois, Charles Babbage é considerado o “pai do 
computador”. E, pelo algoritmo criado para a máquina de Babbage, Ada 
Lovelace, como ficou posteriormente conhecida, é considerada a primeira 
programadora da história.
 Saiba mais
Em 1991 o Science Museum (Museu da Ciência), em Londres, 
construiu uma versão completa e funcional da máquina diferencial n. 
2, comprovando que tal máquina poderia, sim, ter sido construída na 
época, conforme projetada por Babbage.
Mas o problema das complexas engrenagens ainda não havia sido resol-
vido. Em meados do século XX, um matemático e engenheiro eletrônico 
norte-americano, Claude Elwood Shannon, publicou um artigo (e poste-
riormente também um livro) sobre a Teoria Matemática da Comunicação (A 
Mathematical Theory of Communication) (SHANNON, 1948). Pelo pionei-

Crie agora seu perfil grátis para visualizar sem restrições.