Buscar

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

Prévia do material em texto

16/11/2021 08:57 AVA
https://ava2.uniasselvi.com.br/subject/grades-and-tests/answer-book/eyJ0ZXN0Ijp7InRlc3RDb2RlIjoiNjg3NzA1IiwiZGVzY3JpcHRpb24iOiJBdmFsaWHDp8OjbyBJSSAtIEluZGl2aWR1YWwiLCJwYXJhbWV0ZXIiOjU0… 1/5
GABARITO | Avaliação II - Individual (Cod.:687705)
Peso da Avaliação
1,50
Prova
40782253
Qtd. de Questões
10
Acertos/Erros
8/2
Nota
8,00
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". 
 
Assinale a alternativa que apresenta a sequência CORRETA:
A F - V - F - F.
B V - V - V - F.
C V - V - F - V.
D V - F - F - V.
Como regra geral, os atributos de uma classe devem ser ocultos dos demais objetos do sistema, com o objetivo de garantir o
encapsulamento. Entretanto, caso algum destes atributos deva ser exposto, existem vários tipos de exposição, através dos métodos getters e
setters. Com relação à utilização dos getters e setters em uma classe, classifique V para as sentenças verdadeiras e F para as falsas: 
 
I- Os métodos getters fornecem acesso de escrita a um atributo. 
II- Os métodos setters permitem que se altere o valor de um atributo de um objeto. 
III- Uma das vantagens dos setters é que se pode fazer a chamada dos mesmos sem instanciar o objeto onde eles estão. 
IV- Os métodos setters sempre devem retornar o valor que acabaram de passar ao atributo. 
 VOLTAR
A+ Alterar modo de visualização
1
2
Diogo Anderle
Análise e Desenvolvimento de Sistemas (2523872) 
0
16/11/2021 08:57 AVA
https://ava2.uniasselvi.com.br/subject/grades-and-tests/answer-book/eyJ0ZXN0Ijp7InRlc3RDb2RlIjoiNjg3NzA1IiwiZGVzY3JpcHRpb24iOiJBdmFsaWHDp8OjbyBJSSAtIEluZGl2aWR1YWwiLCJwYXJhbWV0ZXIiOjU0… 2/5
 
Agora, assinale a alternativa CORRETA:
A Somente a sentença IV está correta.
B Somente a sentença II está correta.
C As sentenças III e IV estão corretas.
D As sentenças I e III estão corretas.
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 II e III estão corretas.
B As sentenças II e IV estão corretas.
C As sentenças I e IV estão corretas.
D As sentenças I e III estão corretas.
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 permite que um único nome de classe represente diferentes códigos-fonte.
B O principal objetivo do polimorfismo é a capacidade de herdar métodos e classes para uma subclasse.
C O polimorfismo possui a desvantagem de tornar as classes com maior quantidade de código-fonte.
D O polimorfismo apenas ocorre quando o modificador dos métodos da classe forem "protected".
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) { 
 System.out.println("É especialista em " + modalidade); 
 } 
 
 public void competirPor(int pais){ 
3
4
5
Diogo Anderle
Análise e Desenvolvimento de Sistemas (2523872) 
0
16/11/2021 08:57 AVA
https://ava2.uniasselvi.com.br/subject/grades-and-tests/answer-book/eyJ0ZXN0Ijp7InRlc3RDb2RlIjoiNjg3NzA1IiwiZGVzY3JpcHRpb24iOiJBdmFsaWHDp8OjbyBJSSAtIEluZGl2aWR1YWwiLCJwYXJhbWV0ZXIiOjU0… 3/5
 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)" está gerando um erro de sintaxe, e adicionando a palavra-chave "abstract", antes da palavra chave
"void", resolverá o erro gerado. 
III- O método "competirPor(int pais)" não gera erros de sintaxe, logo não necessita da palavra-chave "abstract", antes da palavra-chave "void". 
IV- O método "competir(String modalidade)" gera erro de sintaxe. 
 
Assinale a alternativa CORRETA:
A As sentenças II e III estão corretas.
B As sentenças III e IV estão corretas.
C As sentenças I e II estão corretas.
D As sentenças II e IV estão corretas.
A utilização de classes abstratas permite uma maior confiabilidade na definição da hierarquia de herança, pois possui características
especiais que impedem sua utilização de forma errônea por outros desenvolvedores. Considerando que as palavras sublinhadas na figura a
seguir representam erros de compilação, classifique V para as sentenças e F para as falsas: 
 
( ) Bastaria colocar a palavra reservada abstract na frente da palavra class para resolver todos os problemas da classe. 
( ) Uma classe abstrata pode possuir métodos concretos. 
( ) Somente classes abstratas podem possuir métodos abstratos. 
( ) O primeiro método imprime() deve receber um parâmetro de qualquer tipo para que seu erro de compilação seja corrigido. 
 
Agora, assinale a alternativa que apresenta a sequência CORRETA:
A V - V - F - F.
B V - F - F - V.
C V - V - F - V.
D F - V - V - F.
O polimorfismo é implementado de muitas formas dentro da linguagem de programação Java, sendo que uma das mais utilizadas é a
criação e a implementação de interfaces. Considerando a criação e a utilização de interfaces dentro da linguagem de programação Java, analise
o código fonte da figura a seguir e classifique V para as sentenças verdadeiras e F para as falsas: 
 
( ) A classe SHA faz a sobrecarga do método encript() nas linhas 8 a 12. 
( ) O método encript() faz parte de uma interface chamada IAlgoritmoCriptografia. 
( ) Se a classe SHA fosse abstrata, ela não poderia fornecer implementação para o método gerarChaveCripto(Date data). 
( ) Um vetor de IAlgoritmoCriptografia não pode conter um objeto do tipo SHA. 
6
7
Diogo Anderle
Análise e Desenvolvimento de Sistemas (2523872) 
0
16/11/202108:57 AVA
https://ava2.uniasselvi.com.br/subject/grades-and-tests/answer-book/eyJ0ZXN0Ijp7InRlc3RDb2RlIjoiNjg3NzA1IiwiZGVzY3JpcHRpb24iOiJBdmFsaWHDp8OjbyBJSSAtIEluZGl2aWR1YWwiLCJwYXJhbWV0ZXIiOjU0… 4/5
 
Agora, assinale a alternativa que apresenta a sequência CORRETA:
A F - V - F - F.
B V - F - V - V.
C V - V - F - V.
D V - V - F - F.
Programação é o processo de escrita, teste e manutenção de um programa de computador. A Programação Orientada a Objetos (POO)
diz respeito a um padrão de desenvolvimento que é seguido por muitas linguagens, como C# e Java. Com relação aos conceitos de
programação orientada a objetos e sua implementação na linguagem Java, analise as afirmativas a seguir: 
 
I- Classes abstratas servem como modelo para outras classes que dela herdam e devem ser instanciadas utilizando a palavra reservada "new". 
II- Todas as classes em Java herdam, direta ou indiretamente, a classe Object. 
III- Interfaces podem ser utilizadas quando classes diferentes (não relacionadas) precisam de funcionalidades comuns (métodos) ou utilizam
constantes comuns. 
IV- Na linguagem Java, é possível haver polimorfismo por meio da implementação de herança entre classes. 
 
Agora, assinale a alternativa CORRETA:
A As afirmativas I e IV estão corretas.
B Somente a afirmativa II está correta.
C As afirmativas I e III estão corretas.
D As afirmativas II, III e IV estão corretas.
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 subclasse das classes contidas na área indicada pela letra B. 
II- Quadrado é uma classe filha da classe FormaGeometrica. 
III- A classe Triangulo tem como superclasse a classe FormaGeometrica. 
8
9
Diogo Anderle
Análise e Desenvolvimento de Sistemas (2523872) 
0
16/11/2021 08:57 AVA
https://ava2.uniasselvi.com.br/subject/grades-and-tests/answer-book/eyJ0ZXN0Ijp7InRlc3RDb2RlIjoiNjg3NzA1IiwiZGVzY3JpcHRpb24iOiJBdmFsaWHDp8OjbyBJSSAtIEluZGl2aWR1YWwiLCJwYXJhbWV0ZXIiOjU0… 5/5
 
Agora, assinale a alternativa CORRETA:
A As sentenças II e III estão corretas.
B Somente a sentença I está correta.
C As sentenças I e III estão corretas.
D As sentenças I e II estão corretas.
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 F - V - F - V.
C V - V - V - F.
D V - F - F - V.
10
Diogo Anderle
Análise e Desenvolvimento de Sistemas (2523872) 
0

Outros materiais