Buscar

Programação Orientada a Objetos

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 6 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 6 páginas

Continue navegando


Prévia do material em texto

30/06/2022 18:36 Avaliação Final (Objetiva) - Individual
1/6
Prova Impressa
GABARITO | Avaliação Final (Objetiva) - Individual
(Cod.:746064)
Peso da Avaliação 3,00
Prova 51109013
Qtd. de Questões 10
Acertos/Erros 9/1
Nota 9,00
O DAO propõe a criação de um conjunto de classes onde cada classe representa um conceito de 
objeto mapeado para uma ou mais tabelas do banco de dados. Algumas vantagens adicionais podem 
ser obtidas. Sobre essas funções, assinale a alternativa INCORRETA:
A Troca de mecanismo de persistência: caso o mecanismo de persistência deva ser trocado, basta
trocar o DAO e todo o resto poderá continuar funcionando perfeitamente.
B
Coesão: uma camada DAO bem implementada concentra todas as funções de persistência e
configuração de banco, facilitando alterações futuras.
 
C A função primordial do DAO é fazer a tradução de objetos em strings e de strings em objetos.
D
Abstração completa do mecanismo de persistência: a aplicação em si não precisa conhecer
absolutamente nada sobre o mecanismo de persistência, bastando conhecer somente a interface
externa do DAO.
A herança, juntamente ao encapsulamento, o polimorfismo e a abstração, representa um dos 
pilares da programação orientada a objetos e pode, quando bem modelada e utilizada, diminuir o 
esforço na manutenção do código-fonte. Considerando o relacionamento de herança entre duas ou 
mais classes, assinale a alternativa CORRETA:
A A herança de métodos é possível, porém os métodos do tipo "get" e "set" devem ser reescritos
através do polimorfismo.
B Com a utilização do recurso de herança é possível compartilhar métodos entre uma classe pai e
uma classe filha, porém esse compartilhamento não é possível no tocante aos atributos.
C A palavra extends define a herança na linguagem de programação Java.
D Com a utilização do recurso de herança é possível compartilhar atributos entre uma classe pai e
uma classe filha, porém esse compartilhamento não é possível no tocante aos métodos.
A estrutura de uma classe na linguagem de programação Java comporta um nome, um conjunto 
de atributos, também conhecidos como o estado desta classe e um conjunto de métodos, também 
conhecidos como o comportamento desta classe. Considerando a estrutura da Classe Principal 
demonstrada na figura a seguir, classifique V para as sentenças verdadeiras e F para as falsas: 
( ) A linha 5 marca o que é conhecido como o ponto de entrada da aplicação. 
( ) O método chamado main é quem torna uma classe executável, sendo que a sua existência em 
 VOLTAR
A+
Alterar modo de visualização
1
2
3
30/06/2022 18:36 Avaliação Final (Objetiva) - Individual
2/6
uma classe é opcional. 
( ) Já que o método "Aluno()" não possui parâmetros as linhas 7 a 9 geram erros de compilação. 
( ) Pode-se afirmar que o tipo de dados do atributo "matricula", existente na classe aluno é do tipo 
alfanumérico. 
Assinale a alternativa que apresenta a sequência CORRETA:
A V - V - F - F.
B F - V - V - V.
C V - F - F - V.
D V - F - V - F.
O paradigma da orientação a objetos aplicada no desenvolvimento de software possui a 
vantagem de tornar o código-fonte reutilizável, mais legível, e fácil de realizar manutenção. O 
polimorfismo permite que outras classes representem o comportamento de classes que elas 
referenciam. Com relação às classes criadas no código-fonte, assinale a alternativa CORRETA: 
(1)public class Veiculo { 
(2) public void parar(){} 
(3)} 
(4) 
(5)public class Motocicleta extends Veiculo{ 
(6) public void parar(){ 
(7) System.out.println("Parando a motocicleta!!"); 
(8) } 
(9)} 
(10) 
(11)//Veiculo utilitario esporte (SUV: Sport Utility Vehicle) 
(12)public class Suv extends Veiculo{ 
(13) public void parar(){ 
(14) System.out.println("Parando o veículo utilitário!!"); 
(15) } 
(16)} 
(17) 
(18)public class Principal { 
(19) public static void main(String[] args){ 
(20) Veiculo veiculo1 = new Motocicleta(); 
(21) Veiculo veiculo2 = new Suv(); 
(22) 
(23) veiculo1.parar(); 
(24) veiculo2.parar(); 
(25) } 
(26)}
A Não existe polimorfismo implementado entre as classes do código-fonte apresentado.
4
30/06/2022 18:36 Avaliação Final (Objetiva) - Individual
3/6
B
Ao executarmos a classe Principal, ocorrerá um erro designando que a instância da classe Veiculo
nas linhas 20 e 21 são inválidas, pois recebem a instância de classes de outro tipo (Motocicleta e
Suv).
C
As classes Motocicleta e Suv referenciam o comportamento da classe Veiculo, e ao executarmos
a classe Principal, será impresso primeiramente a mensagem (Parando o veículo utilitário!!) e
depois (Parando a motocicleta!!).
D
A classe Veiculo referencia o comportamento das classes Motocicleta e Suv, e ao executarmos a
classe Principal, será impresso primeiramente a mensagem (Parando a motocicleta!!) e depois
(Parando o veículo utilitário!!).
Uma das dificuldades enfrentadas pelos desenvolvedores Java na criação de suas aplicações é a 
questão da persistência de dados. A maioria das empresas utiliza bancos de dados relacionais, cujo 
funcionamento não é compatível com os sistemas desenvolvidos, utilizando o paradigma de 
programação orientada a objetos. Para resolver esse problema de incompatibilidade, criou-se um 
padrão de projeto chamado de Data Access Object (DAO). Com relação ao padrão de projeto DAO e 
ao mapeamento objeto relacional, classifique V para as sentenças verdadeiras e F para as falsas: 
( ) O DAO sempre exige a implementação de um Singleton. 
( ) Uma das vantagens de uma implementação de DAO bem feita é o desacoplamento do banco de 
dados, permitindo sua troca sem grandes alterações na camada de persistência. 
( ) A camada de mapeamento objeto relacional trabalha com operações somente no sentido objeto-
>banco de dados. 
( ) Atualmente, a recomendação para mapeamento objeto relacional na plataforma Java é a Java 
Persistence API (JPA), que possui diversas implementações e é uma evolução do JDBC, embora 
ainda o utilize como base. 
Agora, assinale a alternativa que apresenta a sequência CORRETA:
A V - F - V - F.
B V - F - F - V.
C F - F - V - V.
D F - V - F - V.
No desenvolvimento de software orientado a objetos, muitos padrões surgiram da solução para 
problemas que normalmente ocorriam, sendo um destes padrões de desenvolvimento o Singleton. O 
padrão Singleton caracteriza-se pela única instância de uma classe durante a execução de um sistema, 
pois em alguns casos esta característica é necessária para resolver determinados problemas. Partindo 
desse pressuposto, classifique V para as sentenças verdadeiras e F para falsas: 
( ) Uma classe implementada com o padrão Singleton não possui o modificador estático (static). 
( ) Uma classe implementada com o padrão Singleton sempre utiliza o modificador estático (static). 
( ) Uma classe implementada com o padrão Singleton deve ter declarado um atributo private do 
próprio tipo da classe. 
( ) Uma classe implementada com o padrão Singleton deve validar se já está instanciada, e caso 
negativo, utiliza o comando "new" para instanciar a classe. 
Assinale a alternativa que apresenta a sequência CORRETA:
5
6
30/06/2022 18:36 Avaliação Final (Objetiva) - Individual
4/6
A V - F - V - F.
B F - V - V - F.
C F - V - V - V.
D V - V - F - F.
Grande parte das aplicações existentes no mercado dependem dos bancos de dados relacionais 
para o armazenamento e a recuperação de informações. Com vistas a isso, a plataforma Java traz uma 
api conhecida como Java Database Connectivity (JDBC), que permite a conexão com os bancos de 
dados mais utilizados. Com relação à JDBC da plataforma Java, classifique V para as sentenças 
verdadeiras e F para as falsas: 
( ) Para conseguir compatibilidade, a arquitetura do JDBC foi feita de forma desacoplada, 
baseando-se em drivers, fornecidos pelos fornecedores de bancos de dados. 
( ) O JDBC endereça automaticamente a questão do mapeamento objeto relacional.( ) Os drivers JDBC do tipo nativo são implementados na linguagem de programação utilizada para 
implementar o banco de dados com o qual se quer estabelecer conexão. 
( ) Para utilizar um driver JDBC do tipo nativo desenvolvido por terceiros, basta adicioná-lo à 
biblioteca do projeto através da inclusão de seu .jar. 
Agora, assinale a alternativa que apresenta a sequência CORRETA:
A F - F - V - F.
B V - F - V - F.
C V - F - F - V.
D V - V - F - F.
O conceito de classes abstrata, através de suas características especiais, fornece ao conceito de 
herança uma maior confiabilidade uma vez que as classes modeladas com herança precisam ser 
melhor idealizadas e projetadas. Dessa forma, avalie o código-fonte da classe Atleta, a seguir, e 
classifique V para as sentenças verdadeiras e F para as falsas: 
package fontes; 
public class Atleta{ 
 private int pais; 
 private String modalidade; 
 private boolean medalistaOlimpico; 
 public abstract void competir(String modalidade) { 
 System.out.println("É especialista em " + modalidade); 
 } 
 
 public void competirPor(int pais){ 
 System.out.println("O atleta compete por " + pais); 
7
8
30/06/2022 18:36 Avaliação Final (Objetiva) - Individual
5/6
 } 
 
} 
( ) A classe em questão não apresenta problemas de sintaxe. 
( ) O método competirPor(int pais) está gerando erro de sintaxe e usa incorretamente a palavra-
chave void. 
( ) O método competirPor(int pais) possui um retorno de tipo definido. 
( ) O método "competir(String modalidade)" não gera erro de sintaxe e usa a palavra-chave abstract 
corretamente. 
Assinale a alternativa que apresenta a sequência CORRETA:
A V - F - V - V.
B F - F - F - F.
C F - F - V - V.
D V - V - V - V.
Uma máquina virtual é um software que simula uma máquina física e consegue executar vários 
programas, gerenciar processos, memória e arquivos. O Java é famoso, dentre muitas características, 
por possuir uma máquina virtual. Quanto às vantagens da máquina virtual e suas características, 
associe os itens, utilizando o código a seguir:
I- Robustez. 
II- Independência de Plataforma. 
III- Segurança. 
IV- Gerenciamento de memória. 
( ) Os programas são escritos para a máquina virtual, que faz a intermediação entre estes e o sistema 
operacional, permitindo que o mesmo programa compilado em um sistema execute em outro.
( ) A memória alocada pelos programas Java é completamente controlada pela máquina virtual, que 
os gerencia em uma sandbox separada do sistema operacional. Em um nível mais micro, a máquina 
virtual aloca e desaloca espaço para os objetos em memória.
( ) Toda e qualquer interação feita com o sistema operacional passa por diversas validações da 
máquina virtual antes de ser efetivamente realizada. Essa característica torna extremamente difícil 
escrever código malicioso em Java.
( ) Erros graves que possam ocorrer por qualquer motivo dentro de um programa que execute dentro 
da máquina virtual são contidos por ela e não repassados ao sistema operacional
Assinale a alternativa que apresenta a sequência CORRETA:
A IV - I - II - III.
B I - III - IV - II.
C II - IV - III - I.
D III - II - I - IV.
9
30/06/2022 18:36 Avaliação Final (Objetiva) - Individual
6/6
Para que possamos programar de forma orientada a objetos, é necessário que utilizemos uma 
linguagem que dê suporte a suas características. Sintes (2002) cita três características mais 
importantes da programação orientada a objetos. Sobre essas características, analise as sentenças a 
seguir:
 
FONTE: SINTES, A. Aprenda programação orientada a objetos em 21 dias. Tradução João Eduardo 
Nóbrega Tortello. São Paulo: Pearson Education do Brasil, 2002.
I – Encapsulamento. 
II – Herança. 
III – Polimorfismo.
IV – Funcional. 
V – Ascpectos. 
Assinale a alternativa CORRETA:
A As sentençasI e IV estão corretas.
B As sentenças II e V estão corretas.
C As sentenças I, II e III estão corretas.
D As sentenças I e III estão corretas.
10
Imprimir