Buscar

Avaliação II - Individual 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

Prévia do material em texto

04/12/2023, 21:08 Avaliação II - Individual
about:blank 1/6
Prova Impressa
GABARITO | Avaliação II - Individual (Cod.:885277)
Peso da Avaliação 1,50
Prova 74341207
Qtd. de Questões 10
Acertos/Erros 9/0
Canceladas 1
Nota 10,00
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 F - F - V - V.
B V - F - F - V.
C F - V - F - V.
D V - V - V - F.
Por intermédio da herança e do encapsulamento, é possível implementarmos o polimorfismo, 
mecanismo que permite que duas ou mais classes derivadas de uma mesma superclasse possam criar e/ou 
invocar métodos com a mesma assinatura, mas com comportamentos diferentes. Com relação ao conceito 
de polimorfismo e sua implementação na linguagem Java, analise as afirmativas a seguir:
I- Polimorfismo de inclusão, polimorfismo paramétrico, sobreposição e sobrecarga são exemplos de tipos de 
polimorfismo. 
II- O Java não permite a implementação do polimorfismo paramétrico. 
III- A técnica de sobrecarga pode ser utilizada para distinguir, em uma determinada classe, dois métodos 
com o mesmo nome, o mesmo retorno e o mesmo conjunto de argumentos, mas com uma lógica diferente. 
IV- Na sobrecarga de métodos, é necessário utilizar a anotação @Override. 
Agora, assinale a alternativa CORRETA:
A As afirmativas II, III e IV estão corretas.
B As afirmativas I e IV estão corretas.
 VOLTAR
A+ Alterar modo de visualização
1
2
04/12/2023, 21:08 Avaliação II - Individual
about:blank 2/6
C Somente a afirmativa I está correta.
D As afirmativas II e IV estão corretas.
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 Se uma classe tiver uma e somente uma responsabilidade, a probabilidade de esta sofrer manutenção
diminui.
B Tanto a coesão quanto o encapsulamento são obtidos na linguagem de programação Java através do
modificador de acesso private.
C A coesão, embora seja uma característica importante, não auxilia o encapsulamento de uma classe.
D Uma classe coesa é, necessariamente, uma classe com alto acoplamento.
A programação orientada a objetos permite o desenvolvimento de códigos-fonte utilizando o 
encapsulamento, que evita ou diminui o acoplamento, dependência dos códigos-fonte, e aumenta a coesão, 
que é o princípio da responsabilidade única de um trecho de código-fonte ou um método, por exemplo. 
Além disso, o polimorfismo é outra vantagem da programação orientada a objetos, o qual possibilita a 
manutenção futura sem necessitar de muitas alterações. Com relação ao encapsulamento, assinale a 
alternativa CORRETA:
A O polimorfismo apenas ocorre quando o modificador dos métodos da classe forem "protected".
B O polimorfismo possui a desvantagem de tornar as classes com maior quantidade de código-fonte.
C O principal objetivo do polimorfismo é a capacidade de herdar métodos e classes para uma subclasse.
D O polimorfismo permite que um único nome de classe represente diferentes códigos-fonte.
Atenção: Esta questão foi cancelada, porém a pontuação foi considerada.
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:
package fontes;
public class Atleta{
 private int pais;
 private String modalidade;
 private boolean medalistaOlimpico;
 public abstract void competir(String modalidade) {
3
4
5
04/12/2023, 21:08 Avaliação II - Individual
about:blank 3/6
 System.out.println("É especialista em " + modalidade);
 }
 
 public void competirPor(int pais){
 System.out.println("O atleta compete por " + pais); 
 }
 
}
I- A classe em questão não apresenta nenhum problema de sintaxe.
II- O método competirPor(int pais) não está gerando nenhum erro de sintaxe e está usando corretamente a 
palavra-chave void.
III- O método competirPor(int pais) gera erros de sintaxe, logo necessita da palavra-chave abstract antes da 
palavra-chave void.
IV- O método "competir(String modalidade)" não gera erro de sintaxe.
Assinale a alternativa CORRETA:
A As sentenças I e II estão corretas.
B As sentenças III e IV estão corretas.
C As sentenças II e IV estão corretas.
D As sentenças II e III estão corretas.
A linguagem de programação Java implementa o encapsulamento através de modificadores de 
visibilidade que podem ser colocados na frente de classes, atributos e métodos. Com relação à utilização do 
encapsulamento na linguagem de programação Java, assinale a alternativa CORRETA:
A O modificador default permite o acesso padrão a todos dentro da mesma aplicação.
B O modificador private permite o acesso somente dentro do mesmo pacote.
C Um método com o modificador public não faz sentido em uma classe com o modificador default.
D O modificador public não pode ser usado na frente de atributos.
De acordo com o paradigma da programação orientada a objetos, o relacionamento de herança 
difere-se do relacionamento de associação especialmente pela definição dos tipos envolvidos. Considerando 
a figura a seguir, classifique V para as sentenças verdadeiras e F para falsas:
( ) O relacionamento mais adequado entre Personagem e Gladiador é o de herança.
( ) Um Personagem tem uma arma, o que caracterizaria um relacionamento de associação.
( ) Se Personagem está associado a uma arma e Gladiador é subclasse de Soldado, necessariamente 
Gladiador tem uma arma.
( ) O relacionamento mais adequado entre Gladiador e Soldado é o de associação.
6
7
04/12/2023, 21:08 Avaliação II - Individual
about:blank 4/6
Agora, assinale a alternativa que apresenta a sequência CORRETA:
A V - V - V - V.
B F - V - F - F.
C V - F - F - V.
D V - V - F - F.
Uma das principais vantagens em se desenvolver um software utilizando o paradigma da orientação a 
objetos, é a reutilização de código-fonte, tornando-o mais legível e fácil de realizar manutenção. Neste 
sentido, podemos exemplificar a facilidade de manutenção com a necessidade de criar uma coluna em uma 
tabela, gravando um valor fixo. Neste caso, basta alterar o método que realiza a inserção de registro nesta 
tabela, e o software está alterado, mesmo que o método seja invocado por mais de uma classe. Analise o 
código-fonte a seguir e classifique V para as sentenças verdadeiras e F para as falsas: 
( ) Devido à herança, a linha 31 está correta.
( ) A classe "Carro" herda o método "getNomeModelo()" da classe "Veiculo".
( ) A classe "Veiculo" herda os métodos com modificador "public" da classe "Carro".
( ) Ocorre uma relação de herança entre as duas classes, sendo que a classe "Carro" herda atributos e 
métodos da classe "Veiculo".
8
04/12/2023, 21:08 Avaliação II - Individual
about:blank 5/6
Assinale a alternativa que apresenta a sequência CORRETA:
A V - F - F - V.
B F - V - F - F.
C V - V - F - V.
D V - V - V - F.
Uma das principais características da orientação a objetos é a possibilidade de ocultar partes do 
código de um objeto, chamada de encapsulamento. Com o encapsulamento, cada parte do código-fonteé 
menor e independente de outras partes, isto é, cada método é específico, realizando uma única operação, 
tornando o código-fonte mais reutilizável e legível. Com relação ao encapsulamento, assinale a alternativa 
CORRETA:
A Ao ocultar detalhes do código-fonte, aumenta-se o acoplamento.
B O encapsulamento evita que alguma entidade externa altere os valores dos atributos de um objeto
indevidamente.
C A interface exposta de uma classe, se alterada para privada, encapsulada, não requer cuidado para os
métodos chamadores.
D O encapsulamento permite a instância de uma classe em memória.
9
04/12/2023, 21:08 Avaliação II - Individual
about:blank 6/6
Os modificadores de acesso possuem o objetivo de tornar classes, métodos ou atributos visíveis ou 
invisíveis, facilitando o seu encapsulamento. Com estes modificadores, podemos, por exemplo, liberar o 
acesso de um atributo de uma classe X por uma classe Y. Analise o código-fonte a seguir e classifique V 
para as sentenças verdadeiras e F para as falsas: 
( ) O método "getCodigo()"da classe "Carro" é visível em todas as classes do pacote.
( ) O método "getCodigo()"da classe "Carro" é visível somente na subclasse de um relacionamento de 
herança.
( ) O método "getValor()"da classe "Carro" é visível somente na subclasse de um relacionamento de 
herança.
( ) O método "getModelo()"da classe "Carro" é visível somente dentro da própria classe "Carro".
Assinale a alternativa que apresenta a sequência CORRETA:
A V - V - V - F.
B F - V - F - F.
C F - F - V - V.
D V - V - F - F.
10
Imprimir

Continue navegando