Prévia do material em texto
02/11/2020 Avaliação Online 1: OUT.TADS.3 - Programação Orientada à Objetos
https://newtonpaiva.instructure.com/courses/9727/quizzes/20076 1/16
Avaliação Online 1
Entrega 8 nov em 23:59 Pontos 15 Perguntas 10
Disponível 2 nov em 0:00 - 8 nov em 23:59 7 dias
Limite de tempo 120 Minutos Tentativas permitidas 2
Instruções
Histórico de tentativas
Tentativa Tempo Pontuação
MAIS RECENTE Tentativa 1 39 minutos 13,5 de 15
As respostas corretas estarão disponíveis em 9 nov em 0:00.
Pontuação desta tentativa: 13,5 de 15
Enviado 2 nov em 15:44
Esta tentativa levou 39 minutos.
Leia com atenção as orientações abaixo antes de iniciar esta prova:
Serão permitidas duas tentativas para realizar esta avaliação, prevalecendo a maior nota.
Programe-se para realizar suas avaliações com tranquilidade, pois você terá 120 minutos
cronometrados (por tentativa) para conclusão e envio das respostas.
Ao iniciar a avaliação o cronômetro não para, independentemente da plataforma estar aberta ou
não;
Durante a realização da prova:
Será exibido uma questão por vez, podendo “Avançar” ou “Voltar” quando necessário dentro
do período da tentativa;
A tentativa somente será contabilizada após clicar no botão “Enviar”.
Fazer o teste novamente
1,5 / 1,5 ptsPergunta 1
Diagrama de classe é o tipo de diagrama é o mais utilizado e um dos
mais importantes dentre os diagramas da UML. Por meio desse
diagrama, é possível definir a estrutura do sistema, em termos de suas
classes, os atributos e métodos que ela possui, e como as classes se
https://newtonpaiva.instructure.com/courses/9727/quizzes/20076/history?version=1
https://newtonpaiva.instructure.com/courses/9727/quizzes/20076/take?user_id=12503
02/11/2020 Avaliação Online 1: OUT.TADS.3 - Programação Orientada à Objetos
https://newtonpaiva.instructure.com/courses/9727/quizzes/20076 2/16
relacionam e trocam mensagens entre si. Considerando a
representação da classe Lampada abaixo, analise as assertivas que
seguem:
I – A classe Lampada possui apenas um atributo.
II – A classe Lampada possui apenas um método.
III – A classe Lampada possui um atributo chamado acende.
Está correto apenas o que se afirma em:
Apenas a assertiva II.
As assertivas I, II e III.
Apenas as assertivas II e III.
Apenas a assertiva III.
Apenas a assertiva I.
Em um diagrama de classe, o primeiro compartimento possui o
nome da classe, o segundo os atributos e o terceiro os métodos
que a classe possui. Conforme pode ser visto em 1.2.
1,5 / 1,5 ptsPergunta 2
Os conceitos de classes e, principalmente, objetos são a chave para
entender o paradigma de orientação a objetos. Além disso, a
explicação de um está inteiramente ligada à explicação do outro.
02/11/2020 Avaliação Online 1: OUT.TADS.3 - Programação Orientada à Objetos
https://newtonpaiva.instructure.com/courses/9727/quizzes/20076 3/16
Dessa forma, baseado nos conceitos estudados nesta unidade sobre
classe, atributos e métodos, pode-se afirmar que:
No paradigma orientado a objetos, as classes são abstrações do
mundo real que possuem os objetos que mostram suas características
e os métodos que descrevem seu comportamento.
No paradigma orientado a objetos, as classes são abstrações do
mundo real que possuem os parâmetros que mostram suas
características e as funções que descrevem seu comportamento.
No paradigma orientado a objetos, as classes são abstrações do
mundo real que possuem variáveis que mostram suas características e
as funções que descrevem seu comportamento.
No paradigma orientado a objetos, os objetos são abstrações do
mundo real que possuem os atributos que mostram suas
características e os métodos que descrevem seu comportamento.
No paradigma orientado a objetos, as classes são abstrações do
mundo real que possuem as variáveis que mostram suas
características e as funções que descrevem seu comportamento.
Os conceitos de classes e, principalmente, objetos são a chave
para entender o paradigma de orientação a objetos. Além disso,
a explicação de um está inteiramente ligada à explicação do
outro. Dessa forma, baseado nos conceitos estudados nesta
unidade sobre classe, atributos e métodos, pode-se afirmar
que:
1,5 / 1,5 ptsPergunta 3
02/11/2020 Avaliação Online 1: OUT.TADS.3 - Programação Orientada à Objetos
https://newtonpaiva.instructure.com/courses/9727/quizzes/20076 4/16
Programação estruturada e programação orientada a objetos são o
que chamamos de paradigmas, e os paradigmas são modelos ou
padrões que foram adotados após anos de experiência. Enquanto o
paradigma estruturado foca nas ações, representado por funções e
procedimento, o paradigma orientado a objetos foca nos objetos e
seus relacionamentos. Com base nessa afirmativa e diante dos
conceitos estudados sobre o paradigma de programação orientado a
objetos, analise as seguintes proposições:
I – Os códigos construídos de acordo com os conceitos de
OO apresentam melhor desempenho, pois são baseados
em objetos do mundo real.
II – Os códigos construídos de acordo com os conceitos de
OO são mais fáceis de dar manutenção.
III – Os códigos construídos de acordo com os conceitos de
OO possibilitam o desenvolvimento em menor tempo,
apesar de exigirem mais tempo de modelagem.
Assinale a opção CORRETA.
I e III estão corretas.
Somente I está correta.
II e III estão corretas.
I, II e III estão corretas.
I e II estão corretas.
Cada paradigma de programação possui suas vantagens. A
programação estruturada tende a apresentar um melhor
desempenho em relação aos códigos desenvolvidos em OO;
porém, em OO, os códigos são mais fáceis de manipular em
menor tempo de desenvolvimento.
1,5 / 1,5 ptsPergunta 4
02/11/2020 Avaliação Online 1: OUT.TADS.3 - Programação Orientada à Objetos
https://newtonpaiva.instructure.com/courses/9727/quizzes/20076 5/16
Na linguagem de programação Java, existem três especificadores de
acesso para os membros de uma classe. De acordo com a afirmativa,
pode-se afirmar que:
Quando a classe possui um membro público, somente a própria classe
pode alterá-lo ou acessá-lo internamente.
Quando a classe possui um membro privado, somente a própria classe
pode alterá-lo ou acessá-lo internamente.
Quando a classe possui métodos públicos, apenas atributos públicos
podem ser usados nesses métodos.
Quando a classe possui um membro protegido, somente a própria
classe pode alterá-lo ou acessá-lo internamente.
Quando a classe possui atributos privados, seus métodos também
devem ser privados.
Somente membros privados podem ser alterados dentro das
classes; os demais – públicos e protegidos – podem, em alguns
casos, ser acessados por outras classes.
1,5 / 1,5 ptsPergunta 5
Os quatro pilares da programação orientada à objetos são: Abstração,
encapsulamento, herança e polimorfismo. Juntos, esses pilares
representam os conceitos fundamentais deste paradigma de
programação.
02/11/2020 Avaliação Online 1: OUT.TADS.3 - Programação Orientada à Objetos
https://newtonpaiva.instructure.com/courses/9727/quizzes/20076 6/16
Sobre abstração, afirma-se:
I - Podemos dizer que uma classe deve abstrair um
conjunto de objetos do mundo real que possuam
características semelhantes.
PORQUE
II – As características de todos os objetos de uma mesma
classe possuem os mesmos valores.
A respeito dessas asserções, assinale a opção correta:
As asserções I e II são proposições falsas
As asserções I e II são proposições verdadeiras, e a II é uma
justificativa correta da I.
As asserções I e II são proposições verdadeiras, mas a II não é uma
justificativa correta da I.
A asserção I é uma proposição verdadeira e a II é uma proposição
falsa.
A asserção I é uma proposição falsa e a II é uma proposição
verdadeira.
1,5 / 1,5 ptsPergunta 6
Assim como a abstração, o encapsulamento é também essencial na
programação orientada a objetos. Ele dá segurança à aplicação,
escondendo algumas propriedades e dando a impressão de uma caixa
preta.
02/11/2020 Avaliação Online 1: OUT.TADS.3 - Programação Orientadaà Objetos
https://newtonpaiva.instructure.com/courses/9727/quizzes/20076 7/16
Baseando-se nesse conceito, qual das opções a seguir aplica
corretamente o conceito de encapsulamento?
02/11/2020 Avaliação Online 1: OUT.TADS.3 - Programação Orientada à Objetos
https://newtonpaiva.instructure.com/courses/9727/quizzes/20076 8/16
De acordo com a Figura, somente os atributos da classe serão
acessados de acordo com seus métodos. Quando os atributos
são públicos, eles podem ser acessados diretamente (sem
intermédio do método) e receber qualquer valor sem estar de
acordo com a regra de negócio.
0 / 1,5 ptsPergunta 7IncorretaIncorreta
O método construtor tem a função de instanciar uma classe, ou seja,
ele é chamado sempre que se deseja criar um objeto que pertence a
essa classe. Esse método sempre tem o nome da classe que ele
instancia, podendo possuir parâmetros ou não; além disso, não tem
valor de retorno.
Nesta tarefa, analise o trecho de código de um construtor a seguir:
Public Pessoa(String nome){
this.nome = nome;
this.nome = this.nome + “teste”;
System.out.println(nome);
}
Agora, imagine que ele será executado para a seguinte instrução:
Pessoa p = new Pessoa(“Joana”);
Qual das opções abaixo será exibida quando o objeto for instanciado?
Será exibido “Joana teste” por causa da concatenação.
02/11/2020 Avaliação Online 1: OUT.TADS.3 - Programação Orientada à Objetos
https://newtonpaiva.instructure.com/courses/9727/quizzes/20076 9/16
Ocorrerá um erro, porque existem duas variáveis com o mesmo
identificador.
Será exibido “Joana”, porque não é assim que se concatena string.
Será exibido “Joana teste”, porque this representa passagem por
referência.
Será exibido apenas o nome, porque this.nome e nome são itens
diferentes.
1,5 / 1,5 ptsPergunta 8
No diagrama de classes, é possível definir a estrutura do sistema de
acordo com suas classes, os atributos e métodos que ela possui e
como as classes se relacionam e trocam mensagens entre si. Eles são
definidos a partir dos requisitos de um sistema.
Baseando-se nos conceitos aprendidos nesta unidade, sendo eles
herança, interface e encapsulamento, selecione o diagrama que
melhor descreve a seguinte frase: “Todo animal tem um peso, mas os
peixes nadam e os cachorros andam”.
02/11/2020 Avaliação Online 1: OUT.TADS.3 - Programação Orientada à Objetos
https://newtonpaiva.instructure.com/courses/9727/quizzes/20076 10/16
02/11/2020 Avaliação Online 1: OUT.TADS.3 - Programação Orientada à Objetos
https://newtonpaiva.instructure.com/courses/9727/quizzes/20076 11/16
A herança utilizada corretamente apresenta o especificador
protegido para o peso, que possibilita que o atributo possa ser
utilizado e modificado nas classes filhas, que, por sua vez,
possuem suas especialidades.
1,5 / 1,5 ptsPergunta 9
02/11/2020 Avaliação Online 1: OUT.TADS.3 - Programação Orientada à Objetos
https://newtonpaiva.instructure.com/courses/9727/quizzes/20076 12/16
O diagrama de classes é uma documentação muito importante, pois,
com ele, é possível ter uma visão geral do sistema sem precisamente
visualizar o código. Para esta atividade, considere o seguinte diagrama
de classes:
/*Classe Professor */
public Professor(float salario, String nome)
{
this.salario = salario;
this.nome = nome;
}
public void calculaRemuneracao()
{
this.salario += this.salario + 100;
02/11/2020 Avaliação Online 1: OUT.TADS.3 - Programação Orientada à Objetos
https://newtonpaiva.instructure.com/courses/9727/quizzes/20076 13/16
}
Considere também que as classes possuem os seguintes construtores:
/*Classe Professor */
public Professor(float salario, String nome)
{
this.salario = salario;
this.nome = nome;
}
public void calculaRemuneracao()
{
this.salario += this.salario + 100;
}
/*Professor concursado*/
public ProfessorConcursado(float salario, String
nome)
{
this.salario = salario;
this.nome = nome;
}
public void calculaRemuneracao()
02/11/2020 Avaliação Online 1: OUT.TADS.3 - Programação Orientada à Objetos
https://newtonpaiva.instructure.com/courses/9727/quizzes/20076 14/16
{
super.calculaRemuneracao();
this.salario += this.salario * 0.2;
}
/*Professor Substituto*/
public ProfessorSubstituto(float salario, String
nome)
{
super(salario, nome);
this.salario = salario;
}
public void calculaRemuneracao()
{
super.calculaRemuneracao();
this.salario += this.salario * 0.1;
}
Por fim, considere o seguinte método main:
/*Main*/
ProfessorConcursado prof1 = new
ProfessorConcursado(300,"prof1");
ProfessorSubstituto prof2 = new
ProfessorSubstituto(300,"prof2");
Professor prof3 = (Professor) new
ProfessorConcursado(300,"prof3");
02/11/2020 Avaliação Online 1: OUT.TADS.3 - Programação Orientada à Objetos
https://newtonpaiva.instructure.com/courses/9727/quizzes/20076 15/16
Professor prof4 = (Professor) new ProfessorSubstituto(300,"prof4");;
prof1.calculaRemuneracao();
prof2.calculaRemuneracao();
prof3.calculaRemuneracao();
prof4.calculaRemuneracao();
System.out.println(prof1.getSalario());
System.out.println(prof2.getSalario());
System.out.println(prof3.getSalario());
System.out.println(prof4.getSalario());
Com base nos conceitos de encapsulamento e herança, trechos de
códigos e diagrama citados, qual sequência de valores será exibida ao
se executar o método main?
Será exibida a sequência “140, 700, 140, 770”.
Será exibida a sequência “700, 700, 700, 700”.
Será exibida a sequência “140, 70, 140, 70”.
Será exibida a sequência “840, 770, 700, 700”.
Será exibida a sequência “840, 700, 840, 700”.
O atributo na classe filha tem prioridade sobre a classe mãe.
1,5 / 1,5 ptsPergunta 10
02/11/2020 Avaliação Online 1: OUT.TADS.3 - Programação Orientada à Objetos
https://newtonpaiva.instructure.com/courses/9727/quizzes/20076 16/16
Na programação orientada a objetos, existem dois mecanismos que
permitem a criação de classes contendo apenas descrições de
atributos e assinaturas de métodos, sem efetivamente implementá-los:
classe abstrata e interface. Nesse contexto, analise as seguintes
proposições e selecione a alternativa CORRETA.
I – Uma classe abstrata pode conter tanto métodos
abstratos quanto métodos completos.
II – Uma classe abstrata é como uma classe comum, ou
seja, contém construtores, métodos e atributos; porém,
deve conter pelo menos um método abstrato.
III – Uma similaridade entre classe abstrata e interface é
que ambas possuem métodos abstratos.
II e III estão corretas.
I e II estão corretas.
I, II e III estão corretas.
Somente I está correta.
I e III estão corretas.
Uma classe abstrata pode conter métodos e atributos, porém
não pode ser instanciada.
Pontuação do teste: 13,5 de 15