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 7 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 7 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

Prévia do material em texto

01/06/2022 17:12 Avaliação II - Individual
1/7
Prova Impressa
GABARITO | Avaliação II - Individual (Cod.:739605)
Peso da Avaliação 1,50
Prova 48768774
Qtd. de Questões 10
Acertos/Erros 7/3
Nota 7,00
A coesão é a característica que faz com que uma classe tenha somente uma responsabilidade 
dentro do sistema, o que faz com que a sua correção, em caso de erros ou a manutenção em caso de 
evolução, seja simplificada. No que se refere à coesão de uma classe, assinale a alternativa 
CORRETA:
A A coesão, embora seja uma característica importante, não auxilia o encapsulamento de uma
classe.
B Se uma classe tiver uma e somente uma responsabilidade, a probabilidade de esta sofrer
manutenção diminui.
C Uma classe coesa é, necessariamente, uma classe com alto acoplamento.
D Tanto a coesão quanto o encapsulamento são obtidos na linguagem de programação Java através
do modificador de acesso private.
Java é uma linguagem de programação interpretada orientada a objetos desenvolvida na década 
de 90 por uma equipe de programadores. Observe a figura anexa que ilustra uma situação típica em 
que podemos aplicar o conceito de herança de classes em Java. Considerando os conceitos de 
programação orientada a objetos, analise as sentenças a seguir: 
I- A classe FormaGeometrica, indicada pela letra A, é considerada a superclasse das classes contidas 
na área indicada pela letra B. 
II- Quadrado é uma classe filha da classe FormaGeometrica. 
III- O método enfatizado pela letra C, calcularArea(), está sobrescrevendo a implementação da 
superclasse de Triangulo. 
IV- A classe FormaGeometrica também é conhecida na linguagem Java como JGF. 
 VOLTAR
A+ Alterar modo de visualização
1
2
01/06/2022 17:12 Avaliação II - Individual
2/7
Agora, assinale a alternativa CORRETA:
A As sentenças I e IV estão corretas.
B As sentenças I, II e III estão corretas.
C Somente a sentença III está correta.
D As sentenças II e IV estão corretas.
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, analise as sentenças a seguir: 
(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{ 
3
01/06/2022 17:12 Avaliação II - Individual
3/7
(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)} 
I- Apesar do código-fonte não lidar com classes abstratas, existe o polimorfismo implementado entre 
as classes do exemplo. 
II- 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). 
III- 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!!). 
IV- 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!!). 
Assinale a alternativa CORRETA:
A As sentenças II e IV estão corretas.
B As sentenças I e III estão corretas.
C As sentenças I e II estão corretas.
D As sentenças III e IV estão corretas.
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, classifique V para as sentenças verdadeiras e F para as falsas: 
( ) A herança possibilita o compartilhamento de atributos entre uma superclasse subclasse, 
limitando esse compartilhamento para os atributos indicados com o modificador "private". 
( ) A palavra-chave extends define que uma classe está estendendo outra, que em outras palavras 
significa o uso de herança na linguagem de programação Java. 
( ) A herança possibilita o compartilhamento de métodos entre uma superclasse subclasse, 
limitando esse compartilhamento para alguns tipos especiais de métodos. 
( ) A herança de métodos é possível, porém os métodos construtores podem ser reescritos através 
do polimorfismo. 
Assinale a alternativa que apresenta a sequência CORRETA:
A F - F - V - V.
4
01/06/2022 17:12 Avaliação II - Individual
4/7
B V - F - F - V.
C V - V - V - F.
D F - V - F - F.
Diz-se que no paradigma da orientação a objetos, os objetos podem criar relações entre si, e 
duas maneiras de se estabelecer uma relação entre objetos são através da associação e da herança que 
devem ser utilizados na solução de problemas diferentes. Sobre esses relacionamentos, analise as 
sentenças a seguir: 
I- Quando um relacionamento de associação é estabelecido entre duas ou mais classes, significa que 
os objetos dessas classes estão relacionados, de alguma maneira, no mundo real. 
II- Nos relacionamentos de associação, o conceito de superclasse é utilizado de maneira diferente do 
que nos relacionamentos de herança.
III- Os relacionamentos do tipo "associação" são implementados na linguagem de programação Java 
através das palavras reservadas "associate to". 
IV- Um relacionamento que responde de maneira positiva à pergunta "é um tipo de" representa uma 
herança. 
Assinale a alternativa CORRETA:
A As sentenças I e IV estão corretas.
B As sentenças II e IV estão corretas.
C As sentenças I e III estão corretas.
D As sentenças II e III estão corretas.
A sobrecarga de métodos, considerada um tipo de polimorfismo, é um mecanismo que permite 
que dois ou mais métodos compartilhem o mesmo nome, contanto que tenham diferentes conjuntos 
de parâmetros. Dessa forma, com o código-fonte apresentado, referente à classe Bicicleta e a sintaxe 
aplicada ao polimorfismo de sobrecarga para os dois métodos construtores da referida classe, assinale 
a alternativa CORRETA: 
public class Bicicleta{ 
 private char tamanhoQuadro; 
 private int numeroMarchas; 
 private char tamanhoRoda; 
 
 public void movimentar(){ 
 System.out.println("O objeto bike está em movimento!!"); 
 } 
}
A public Bicicleta(){ } public Bicicleta(char tamanhoQuadro){ this.tamanhoQuadro =
tamanhoQuadro; }
B
public Bicicleta(){ } public Bicicleta(char tamanhoQuadro, int numeroMarchas, char
tamanhoRoda){ this.tamanhoQuadro = numeroMarchas; this.numeroMarchas = tamanhoQuadro;
this.tamanhoRoda = tamanhoRoda; }
5
6
01/06/2022 17:12 Avaliação II - Individual
5/7
C
public Bicicleta(char tamanhoQuadro, int numeroMarchas, char tamanhoRoda){
this.tamanhoQuadro = tamanhoQuadro; this.numeroMarchas = numeroMarchas; } public
Bicicleta(char numeroMarchas){ this. numeroMarchas = numeroMarchas; }
D
public Bicicleta(char tamanhoQuadro, int numeroMarchas, char tamanhoRoda){
this.tamanhoQuadro = tamanhoQuadro; this.numeroMarchas = numeroMarchas;
this.tamanhoRoda = tamanhoRoda; } public Bicicleta(){ this.tamanhoRoda = tamanhoRoda;; }
O encapsulamento ajuda a diminuir o acoplamento entre os objetos de um sistema, pois prega 
que somente o que é absolutamente necessário deve ser exposto aos demais. Com relação ao 
encapsulamento, assinale a alternativa CORRETA:A O alto acoplamento é positivo, pois permite que os objetos se comuniquem com mais
facilidade.
B Para fazer uso do encapsulamento, basta modificarmos a visibilidade de nossos atributos.
C Métodos também podem ser ocultados, no sentido de garantir um maior encapsulamento.
D Um bom cidadão é um objeto que tem todos os valores de seus atributos preenchidos no
momento da instanciação.
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); 
 } 
 
} 
( ) 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 F - F - V - V.
7
8
01/06/2022 17:12 Avaliação II - Individual
6/7
F F V V.
B V - F - V - V.
C F - F - F - F.
D V - V - V - V.
A utilização do recurso de Pacotes em Java permite uma melhor organização do código-fonte, 
além de permitir que duas ou mais classes tenham o mesmo nome em pacotes diferentes. Juntamente 
com eles, o uso dos modificadores de visibilidade compõe uma fórmula poderosa no tocante à 
definição de segurança e encapsulamento de um programa ou aplicação. Sobre a utilização de 
modificadores de visibilidade na linguagem de programação Java, classifique V para as sentenças 
verdadeiras e F para as falsas: 
( ) O modificador "default", aplicado para uma classe, permite o acesso a essa classe por uma classe 
de outro pacote através do comando import. 
( ) O modificador "default", definido para um método contido em uma classe pública, impede que o 
método seja acessado por outra classe criada em outro pacote. 
( ) O modificador "private", definido para um método contido em uma classe com o modificador 
"default", não impede que o método seja acessado por outra classe criada no mesmo pacote. 
( ) O modificador "public", definido para um método contido em uma classe pública, elimina 
qualquer tipo de restrição de acesso ao método, mesmo que ele seja acessado em uma classe criada 
em outro pacote. 
Assinale a alternativa que apresenta a sequência CORRETA:
A F - F - F - F.
B V - F - F - V.
C F - V - F - V.
D V - V - V - F.
Por intermédio da herança, um dos pilares da programação orientada a objetos, é possível 
reaproveitarmos características e comportamentos já implementados em outras classes sem a 
necessidade de realizar a cópia de código-fonte. Com relação a esse conceito, classifique V para as 
sentenças verdadeiras e F para as falsas: 
( ) Em uma superclasse, para acessar métodos da subclasse deve ser usada a instrução super. 
( ) A implementação de herança múltipla em Java não é possível. 
( ) Para definirmos um relacionamento de herança entre classes utilizamos a palavra reservada 
"derives". 
( ) Uma subclasse herda os métodos da superclasse, entretanto, pode ter seus próprios métodos. 
Agora, assinale a alternativa que apresenta a sequência CORRETA:
A V - F - F - V.
B F - F - V - V.
9
10
01/06/2022 17:12 Avaliação II - Individual
7/7
C F - V - F - V.
D V - V - V - F.
Imprimir

Continue navegando