Buscar

(Nota 6) AO2 - POO

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 11 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 11 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 9, do total de 11 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

11/06/2022 15:02 Teste: AO2
https://famonline.instructure.com/courses/20544/quizzes/91797/take 1/11
AO2
Iniciado: 11 jun em 14:15
Instruções do teste
Importante:
Caso você esteja realizando a atividade através do aplicativo "Canvas Student", é necessário que
você clique em "FAZER O QUESTIONÁRIO", no final da página.
0,6 ptsPergunta 1
A partir do texto, entende-se que a classe-filho automaticamente herda os atributos e
as funcionalidades da classe-pai. A este efeito dá-se o nome de herança.
A partir do texto, é possível afirmar que a classe-filho automaticamente herda os
atributos e as funcionalidades da classe-pai. A este efeito dá-se o nome de
encapsulamento.
Considerando o texto apresentado, entende-se que a classe-filho automaticamente
herda os atributos e as funcionalidades da classe-pai. A este efeito dá-se o nome de
polimorfismo.
A partir do texto, é possível afirmar que a classe-filho automaticamente herda os
atributos e as funcionalidades da classe-pai. A este efeito dá-se o nome de
acoplamento.
Leia o texto abaixo:
 
Uma classe pode assumir alguns comportamentos. Por exemplo, uma classe
pode ser definida a partir de outra classe já existente. Nesse caso a classe
definida a partir de uma classe existente é chamada de classe-filho (ou
subclasse), enquanto a classe existente é denominada classe-pai. É possível
determinar famílias de classes através de um conceito de hierarquia de classes.
 
Fonte: MANZANO, J. A. N. G. Java 7: programação de computadores: guia
prática de introdução, orientação e desenvolvimento. São Paulo: Érica, 2011.
 
Considerando as informações apresentadas, assinale a opção correta.
A+
A
A-
nanda
Rectangle
nanda
Rectangle
nanda
Rectangle
nanda
Rectangle
11/06/2022 15:02 Teste: AO2
https://famonline.instructure.com/courses/20544/quizzes/91797/take 2/11
Considerando o texto apresentado, compreende-se que a classe-filho
automaticamente herda os atributos e as funcionalidades da classe-pai. A este efeito
dá-se o nome de abstração.
0,6 ptsPergunta 2
Porque ela possui erros: atributo público e métodos private e protected.
Porque faltou implementar o método fala.
Porque ela não possui get e set para seu atributo.
Porque ela é uma classe abstrata e serve apenas para herança.
Analise o código abaixo:
 
abstract class Pessoa {
 public String nome;
 
 public Pessoa(){
 // ...
 }
 private void anda()
 {
 // ...
 }
 protected abstract void fala();
}
 
Considerando o código exposto acima, por que não podemos criar objetos da
classe Pessoa?
 
A+
A
A-
nanda
Rectangle
nanda
Rectangle
11/06/2022 15:02 Teste: AO2
https://famonline.instructure.com/courses/20544/quizzes/91797/take 3/11
Porque ela é uma interface.
0,6 ptsPergunta 3
Leia o texto a seguir:
 
Assim como os desenhos de engenharia de um carro podem ser reutilizados
várias vezes para fabricar muitos carros, você pode reutilizar uma classe muitas
vezes para construir vários objetos. A reutilização de classes existentes ao
construir novas classes e programas economiza tempo e esforço. Também ajuda
a construir sistemas mais confiáveis e eficientes, porque classes e componentes
existentes costumam passar por extensos testes, depuração e ajuste de
desempenho. Assim como a noção das partes intercambiáveis foi crucial para a
Revolução Industrial, classes reutilizáveis são fundamentais para a revolução de
software que foi estimulada pela tecnologia de objetos.
 
Fonte: DEITEL, H.; DEITEL, P. Java: como programar. 10. ed. São Paulo:
Pearson Education do Brasil, 2017, p. 9.
 
Considerando as informações apresentadas, avalie as asserções abaixo e a
relação proposta entre elas.
 
I. A programação orientada a objeto adota princípios como a abstração, o
encapsulamento, a herança e o polimorfismo.
 
PORQUE
 
II. Os quatro princípios da programação orientada a objeto combinados dão
origem ao princípio “Write Once, Run Anywhere”, em que o código é compilado
uma única vez e pode ser reutilizado em qualquer computador.
 
A respeito dessas asserções, assinale a opção correta.
A+
A
A-
nanda
Rectangle
nanda
Rectangle
11/06/2022 15:02 Teste: AO2
https://famonline.instructure.com/courses/20544/quizzes/91797/take 4/11
A asserção I é uma proposição falsa e a asserção II é uma proposição verdadeira.
A asserção I é uma proposição verdadeira, e a asserção II é uma proposição falsa.
As asserções I e II são proposições falsas.
As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa
correta da I.
As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I.
0,6 ptsPergunta 4
Leia o texto a seguir:
 
Quando uma classe implementa uma interface, o mesmo relacionamento “é um”
fornecido por herança se aplica. A classe Employee implementa Payable, assim
podemos dizer que um Employee é uma Payable. De fato, objetos de quaisquer
classes que estendem Employee também são objetos Payable. Os objetos de
quaisquer subclasses da classe que implementa a interface também podem ser
pensados como objetos do tipo de interface.
 
Fonte: DEITEL, H.; DEITEL, P. Java: como programar. 10. ed. São Paulo:
Pearson Education do Brasil, 2017, p. 337. Adaptado.
 
Considerando as informações apresentadas, avalie as asserções abaixo e a
relação proposta entre elas:
 
I. Existe uma relação de polimorfismo entre uma classe que implementa uma
interface e a interface, isso é, objetos da classe podem ser tratados como objetos
“da interface”.
 
PORQUE
 
A+
A
A-
nanda
Rectangle
nanda
Rectangle
11/06/2022 15:02 Teste: AO2
https://famonline.instructure.com/courses/20544/quizzes/91797/take 5/11
A asserção I é uma proposição verdadeira, e a asserção II é uma proposição falsa.
A asserção I e a asserção II são proposições verdadeiras, e a II é uma justificativa
correta da I.
A asserção I e a asserção II são proposições verdadeiras, mas a II não é uma
justificativa correta da I.
A asserção I é uma proposição falsa e a asserção II é uma proposição verdadeira
A asserção I e a asserção II são proposições falsas.
II. A relação entre uma classe e uma interface pode ser utilizada para realizar
herança, transmitindo códigos prontos, como métodos, que podem ser utilizados
pelos objetos de suas subclasses, apesar de ser impossível instanciar objetos de
uma interface.
 
A respeito dessas asserções, assinale a opção correta:
0,6 ptsPergunta 5
Herança e visibilidade.
Leia o texto abaixo:
 
Ao desenvolver um sistema para controlar hidrômetros e relógios utilizados para
registrar o consumo de água, é preciso observar se estes dois instrumentos
possuem características e comportamento comuns. Neste contexto, o
desenvolvedor utilizou alguns conceitos fundamentais da orientação a objetos,
eles se referem à estrutura das classes para reutilização de código e outros estão
relacionados ao chamamento de métodos com mesma assinatura, considerando
as especificidades da operação dos hidrômetros. 
 
Quais foram os conceitos de orientação a objetos implementados pelo
desenvolvedor apresentado no texto acima?
 
A+
A
A-
nanda
Rectangle
nanda
Rectangle
11/06/2022 15:02 Teste: AO2
https://famonline.instructure.com/courses/20544/quizzes/91797/take 6/11
Herança e polimorfismo.
Abstração e composição.
Composição e agregação.
Agregação e polimorfismo.
0,6 ptsPergunta 6
Analise o código abaixo:
 
void foo (Automovel a) {
 a.locomocao();
}
void bar () {
 Conversivel c = new Conversivel();
 foo(c);
}
 
Sabendo que Conversivel é subclasse de Automovel, analise as afirmações
abaixo sobre o código:
 
I. Na função bar, c é um Automovel.
 
II. Na função foo, a é um Conversivel.
 
III. No método bar, o método sendo chamado na primeira linha é determinado em
tempo de compilação.
 
IV. No método foo, o método sendo chamado na primeira linha é determinado em
tempo de compilação.
A+
A
A-
nanda
Rectangle
nanda
Rectangle
11/06/2022 15:02 Teste: AO2
https://famonline.instructure.com/courses/20544/quizzes/91797/take7/11
I e III, apenas.
II e III, apenas.
I e II, apenas.
II e IV, apenas.
III e IV, apenas.
 
São corretas as afirmações:
0,6 ptsPergunta 7
O valor a ser depositado seria um atributo do objeto conta bancária.
O valor a ser depositado deve ser determinado internamente pelo método depósito,
seguindo o princípio da abstração.
O valor a ser depositado seria uma exceção da classe conta bancária.
Leia o texto a seguir:
 
Ao dirigir um carro, o ato de pressionar o acelerador envia uma mensagem para o
veículo realizar uma tarefa — isto é, ir mais rápido. Da mesma forma, você envia
mensagens para um objeto. Cada mensagem é implementada como uma
chamada de método que informa a um método do objeto a maneira de realizar
sua tarefa. Por exemplo, um programa pode chamar o método depósito de
um objeto conta bancária para aumentar o saldo da conta.
 
Fonte: DEITEL, H.; DEITEL, P. Java: como programar. 10. ed. São Paulo:
Pearson Education do Brasil, 2017. p. 9. Adaptado.
 
Considerando o exemplo em destaque no fim do texto acima, assinale a opção
que melhor descreve como representar o valor a ser depositado.
 
A+
A
A-
nanda
Rectangle
nanda
Rectangle
11/06/2022 15:02 Teste: AO2
https://famonline.instructure.com/courses/20544/quizzes/91797/take 8/11
O valor a ser depositado seria um parâmetro do método depósito.
O valor a ser depositado seria uma classe filha da classe conta bancária.
0,6 ptsPergunta 8
Leia o texto a seguir:
 
O compilador verifica cada chamada de método e declaração de método para
determinar se ele lança uma exceção verificada. Se sim, o compilador checa se a
exceção verificada é capturada ou é declarada em uma cláusula throws — isso é
conhecido como requisito “capture ou declare” (catch-or-declare). Lembre-se de
que a cláusula throws especifica as exceções que um método lança. Tais
exceções não são capturadas no corpo do método. Para satisfazer a parte
capture do requisito capture ou declare, o código que gera a exceção deve ser
empacotado em um bloco try e fornecer uma rotina de tratamento catch para o
tipo de exceção verificada (ou uma de suas superclasses). Para satisfazer a parte
declare do requisito capture ou declare, o método contendo o código que gera a
exceção deve fornecer uma cláusula throws contendo o tipo de exceção
verificada depois de sua lista de parâmetros e antes do corpo do método. Se o
requisito “capture ou declare” não for atendido, o compilador emitirá uma
mensagem de erro.
 
 
Fonte: DEITEL, H.; DEITEL, P. Java: como programar. 10. ed. São Paulo:
Pearson Education do Brasil, 2017, p. 356. Adaptado.
 
Considerando as informações apresentadas, analise as afirmações abaixo:
 
I. Se um método “A” chama um método “B” que lança exceções, “A” deve
necessariamente as capturar.
 
II. Como exceções podem ser capturadas ou lançadas, uma exceção não tratada
não provocará erro, desde que seja lançada por todos os métodos na pilha.
A+
A
A-
nanda
Rectangle
nanda
Rectangle
11/06/2022 15:02 Teste: AO2
https://famonline.instructure.com/courses/20544/quizzes/91797/take 9/11
I, II e IV, apenas.
I e III, apenas.
II, III e IV, apenas.
I e II, apenas.
III e IV, apenas.
 
III. Um método não é obrigado a capturar uma exceção, desde que ele a lance.
 
IV. Um método não é obrigado a lançar uma exceção, desde que ele a capture.
 
Estão corretas as afirmações:
0,6 ptsPergunta 9
Leia o texto a seguir:
 
Grupos de desenvolvimento de software podem usar uma abordagem modular de
projeto e implementação orientados a objetos para que sejam muito mais
produtivos do que com as técnicas anteriormente populares como “programação
estruturada” — programas orientados a objetos são muitas vezes mais fáceis de
entender, corrigir e modificar.
 
Fonte: DEITEL, H.; DEITEL, P. Java: como programar. 10. ed. São Paulo:
Pearson Education do Brasil, 2017, p. 8.
 
Considerando as informações apresentadas, analise as afirmações abaixo:
 
I. A programação orientada a objeto é um conjunto de princípios, portanto pode
ser aplicada em qualquer linguagem, desde que o programador siga seus
A+
A
A-
nanda
Rectangle
nanda
Rectangle
11/06/2022 15:02 Teste: AO2
https://famonline.instructure.com/courses/20544/quizzes/91797/take 10/11
III, apenas.
II e III, apenas.
I e II, apenas.
II, apenas.
I e III, apenas.
princípios.
 
II. Programas orientados a objeto possuem melhor desempenho do que
programas feitos utilizando apenas “programação estruturada”, ou seja, são mais
rápidos e usam menos memória.
 
IV. Programas orientados a objeto possuem grande capacidade de reutilização de
código, gerando códigos menores e fáceis de propagar correções ou novas
funcionalidades.
 
Estão corretas as afirmações:
0,6 ptsPergunta 10
Leia o texto abaixo:
 
Um método abstrato define a assinatura de um método, mas não fornece
implementação. Uma subclasse deve fornecer sua própria implementação de
cada método abstrato definido por sua superclasse. Portanto, um método
abstrato especifica a interface do método, mas não a implementação. Embora as
classes e métodos abstratos sejam úteis, podemos levar esse conceito um passo
adiante. Em Java, podemos separar totalmente a interface de uma classe de sua
implementação usando a palavra-chave interface.
Uma interface é sintaticamente semelhante a uma classe abstrata no fato de
podermos especificar um ou mais métodos sem corpo. Estes métodos devem ser
implementados por uma classe para que suas ações sejam definidas. Quando
A+
A
A-
nanda
Rectangle
nanda
Rectangle
11/06/2022 15:02 Teste: AO2
https://famonline.instructure.com/courses/20544/quizzes/91797/take 11/11
Salvo em 15:02 
A partir do texto, entende-se que uma interface especifica o que deve ser feito, mas
não como deve ser feito.
Segundo o texto, todos os métodos não precisam ser implementados pela classe que
venha a utilizar uma determinada interface.
A partir do texto, compreende-se que um programa em Java pode instanciar uma
interface.
A partir do texto, entende-se que as interfaces possuem atributos assim como as
classes.
Uma interface, assim como uma classe abstrata, fornece os nomes dos métodos e os
implementa, conforme indica o texto.
uma interface é definida, não há limite para o número de classes que podem
implementá-la. Além disso, uma classe pode implementar qualquer número de
interface.
 
Fonte: SCHILDT, H. Java para iniciantes: crie, compile e execute programas Java
rapidamente, 6ª edição. Porto Alegre: Bookman, 2015 (adaptado).
 
Considerando as informações apresentadas, assinale a opção correta.
Enviar teste
A+
A
A-
nanda
Rectangle
nanda
Rectangle

Continue navegando