Exercícios de orientação a objetos com respostas
Para mandar bem em provas, exames e concursos treine e aprenda gratuitamente com os exercícios de orientação a objetos resolvidos.
Índice:
📌 Considere que um Analista de TI sabe que uma classe Pessoa Física e uma classe Pessoa Jurídica possuem o atributo nome como uma informação em comum e que o CPF é um atributo específico para a Pessoa Física e o CNPJ é um atributo específico para Pessoa Jurídica. Então o Analista criou uma outra classe com o atributo nome e seu objetivo é que haja herança deste e, eventualmente, outros métodos e atributos, para as classes filhas, Pessoa Física e Pessoa Jurídica, que já existiam.
Essa classe criada não é instanciada, apenas fornece um modelo para geração de outras classes, e é denominada
Parte 1 da resolução
A letra A está errada pois uma subclasse ou classe derivada é uma classe que é definida através da herança a partir de outra classe. De acordo com o enunciado do exercício as subclasses seriam as classes filhas Pessoa Jurídica e Pessoa Física.
Parte 2 da resolução
A letra B está errada pois na orientação a objetos existe o construtor de uma classe, mas é um conceito vinculado a métodos e não ao tipo de classe.
Parte 3 da resolução
A letra C está correta pois classes abstratas servem como modelos para as classes derivadas ou subclasses. As classes abstratas somente podem ser estendidas e não instanciadas e caso ela possua métodos abstratos as classes derivadas devem implementar tais métodos. Para reafirmar a resposta o enunciado do exercício diz que e "essa classe criada não é instanciada, apenas fornece um modelo para geração de outras classes" e "o Analista criou uma outra classe com o atributo nome e seu objetivo é que haja herança deste".
Parte 4 da resolução
A letra D está errada pois na orientação a objetos existe o conceito de sobrescrita de métodos e não de classe sobrescrita.
Parte 5 da resolução
A letra E está errada pois o pacote serve para organizar classes e bibliotecas e não está relacionado ao fornecimento de um modelo para geração de outras classes.
💡
A programação orientada a objetos surgiu como uma alternativa a programação estruturada. O intuito de sua criação foi o de aproximar o manuseio das estruturas de um programa ao manuseio das coisas do mundo real, daí o nome "objeto" como uma algo genérico, que pode representar qualquer coisa tangível.
Parte 1 da resolução
A alternativa D está correta pois segundo o artigo "Os 4 pilares da Programação Orientada a Objetos" publicado no site devmedia, os 4 pilares da programação orientada a objeto são:
- Abstração:
É utilizada para a definição de entidades do mundo real, classes. As classes possuem identidade(unicidade), propriedades(características do objeto) e métodos(ações que o objeto irá executar).
- Encapsulamento:
O encapsulamento esconde detalhes internos do funcionamento dos métodos de uma classe para os objetos. A maior parte das linguagens orientadas a objetos implementam o encapsulamento baseado em propriedades privadas, ligadas a métodos especiais chamados getters e setters, que irão retornar e setar o valor da propriedade, respectivamente. Essa atitude evita o acesso direto a propriedade do objeto, adicionando uma outra camada de segurança à aplicação.
- Herança:
A Herança possibilita que as classes compartilhem seus atributos, métodos e outros membros da classe entre a classe pai e as classes derivadas. Algumas linguagens, como o C++, usam herança múltipla, ou seja, um objeto pode herdar características de vários “ancestrais” ao mesmo tempo. Já outras linguagens como Java, PHP, etc, permitem somente a herança de uma classe derivada com uma classe pai somente.
- Polimorfismo:
O polimorfismo ocorre quando duas ou mais classes derivadas de uma mesma superclasse invocam métodos que têm a mesma identificação (assinatura) mas comportamentos distintos. O polimorfismo está intimamente conectado à herança.
As alternativas A, B e C estão erradas pois sequenciamento, procedimento, bibliotecas, classes, objetos, atributos e métodos não são pilares do paradigma de orientação a objetos, apesar de serem conceitos importantes para a orientação a objetos.
💡
O termo polimorfismo é originário do grego e significa "muitas formas". Polimorfismo é o princípio pela qual duas classes derivam de uma mesma superclasse, podendo invocar métodos que tenham a mesma assintura, mas comportamentos distintos.
📌 Sobre os conceitos de Orientação a Objetos, identifique com “V” caso verdadeiro ou “F” caso falso as assertivas a seguir.
( ) A Sobrescrita permite que, em uma mesma classe, tenhamos vários métodos com o mesmo nome, mas com a assinatura diferente.
( ) Objetos são instâncias de uma classe que possui os atributos e as operações definidos na classe.
( ) Superclasse é uma especialização de um conjunto de classes através de herança.
( ) A Sobrecarga possibilita que o mesmo nome possa ser utilizado em diferentes métodos em uma mesma classe, desde que, por exemplo, as quantidades de parâmetros sejam diferentes.
( ) Classe encapsula dados para descrever o conteúdo de alguma entidade do mundo real.
A sequência correta obtida, no sentido de cima para baixo, é
📌 Polimorfismo é um conceito usado em programação orientada a objetos, e envolve a seleção dinâmica baseada
📌 Considere as seguintes afirmações sobre alguns fundamentos de Análise de Sistemas orientada a objetos.
I - Classe é um conceito orientado a objeto que encapsula dados e abstrações procedurais necessárias para descrever o conteúdo e o comportamento de alguma entidade do mundo real. Podese dizer que classe é uma descrição generalizada que descreve uma coleção de objetos similares.
II - Superclasse é a generalização de um conjunto de classes a ela relacionadas.
III - Subclasse é uma especialização da superclasse. Uma subclasse herda todos os atributos e operações associadas à sua superclasse e não pode incorporar atributos ou operações adicionais específicos.
Quais estão corretas?
📌 Com relação aos conceitos de orientação objeto, existe uma característica que faz com que detalhes internos do funcionamento dos métodos de uma classe permaneçam ocultos para os objetos e que por conta dessa técnica, o conhecimento a respeito da implementação interna da classe é desnecessário do ponto de vista do objeto, uma vez que isso passa a ser responsabilidade dos métodos internos da classe. A característica apresentada se refere a:
📌 No contexto dos principais elementos conceituais do modelo de objetos, assinale a alternativa que define corretamente o conceito de encapsulamento.
📌 O Polimorfismo, um dos Pilares da Programação Orientada a Objetos - POO,
🙋 Perguntas e Respostas
O que é orientação a objetos ?

Motive-se
Lute até o fim, porque sua vida dependerá da força que você tem dentro de ti.