Buscar

AO2 (DP_ADAP Outubro)_ 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 20 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 20 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 20 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

27/02/2023, 08:13 AO2 (DP/ADAP Outubro): Programação Orientada a Objetos
https://famonline.instructure.com/courses/26591/quizzes/123499 1/20
AO2 (DP/ADAP Outubro)
Entrega 24 de out de 2022 em 23:59 Pontos 6 Perguntas 10 Disponível até 24 de out de 2022 em 23:59
Limite de tempo Nenhum
Instruções
Este teste não está mais disponível, pois o curso foi concluído.
Histórico de tentativas
Tentativa Tempo Pontuação
MAIS RECENTE Tentativa 1 31 minutos 5,4 de 6
Pontuação deste teste: 5,4 de 6
Enviado 19 de out de 2022 em 0:59
Esta tentativa levou 31 minutos.
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 / 0,6 ptsPergunta 1
A+
A
A-
https://famonline.instructure.com/courses/26591/quizzes/123499/history?version=1
27/02/2023, 08:13 AO2 (DP/ADAP Outubro): Programação Orientada a Objetos
https://famonline.instructure.com/courses/26591/quizzes/123499 2/20
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-
27/02/2023, 08:13 AO2 (DP/ADAP Outubro): Programação Orientada a Objetos
https://famonline.instructure.com/courses/26591/quizzes/123499 3/20
 
São corretas as afirmações:
 III e IV, apenas. 
 I e III, apenas. Correto!Correto!
Alternativa correta.
Pelo princípio do polimorfismo, uma subclasse também é objeto da superclasse. Como Conversivel é
subclasse de Automovel, todo objeto Conversivel é, necessariamente, objeto de Automovel também,
portanto a afirmação I está correta.
A relação inversa não é válida: um objeto Automovel não necessariamente é um objeto Conversivel. Tratar
um objeto Automovel como Conversivel provocará erros, ou seja, a afirmação II está incorreta.
Construtores são específicos de cada classe. Classes filhas devem ter seus próprios construtores, mesmo
que eles chamem internamente o super(), isso quer dizer que, naquela linha, é possível determinar já em
tempo de compilação qual o construtor a ser utilizado: será necessariamente o construtor específico de
Conversivel cujos parâmetros batam com os passados (no caso, deve ser um construtor sem parâmetros).
Isso é o que chamamos de polimorfismo estático, o que conclui a afirmação III como correta.
A função foo recebe um objeto Automovel. Esse objeto pode ser um Automovel puro ou pode ser objeto de
classe herdeira. Nas classes herdeiras o método pode ter sido sobreposto. Como em diferentes pontos do
código a função foo pode ser chamada recebendo objetos de diferentes subclasses, apenas durante a sua
execução será possível determinar qual versão do método locomocao (o original ou uma das possíveis
sobreposições) será utilizado. Isso é o que chamamos de polimorfismo dinâmico, ou seja, a afirmação IV
está incorreta.
 II e IV, apenas. 
A+
A
A-
27/02/2023, 08:13 AO2 (DP/ADAP Outubro): Programação Orientada a Objetos
https://famonline.instructure.com/courses/26591/quizzes/123499 4/20
 I e II, apenas. 
 II e III, apenas. 
0,6 / 0,6 ptsPergunta 2
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.
 
 O valor a ser depositado seria um atributo do objeto conta bancária. 
A+
A
A-
27/02/2023, 08:13 AO2 (DP/ADAP Outubro): Programação Orientada a Objetos
https://famonline.instructure.com/courses/26591/quizzes/123499 5/20
 
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 classe filha da classe conta bancária. 
 O valor a ser depositado seria um parâmetro do método depósito. Correto!Correto!
Alternativa correta.
O valor a ser depositado é uma informação que não é intrínseca do objeto (portanto não pode ser um
atributo), nem é gerada pela própria função depósito (não podendo ser, portanto, “determinada
internamente”), e sim uma informação externa que precisa ser informada para o método depósito. Se o
método é a forma de passar mensagens, então essa informação deve ser um parâmetro do método.
Herança e exceção nem sequer se aplicam à situação descrita no texto.
 O valor a ser depositado seria uma exceção da classe conta bancária. 
0,6 / 0,6 ptsPergunta 3
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
A+
A
A-
27/02/2023, 08:13 AO2 (DP/ADAP Outubro): Programação Orientada a Objetos
https://famonline.instructure.com/courses/26591/quizzes/123499 6/20
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 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.
Correto!Correto!
A alternativa está correta. Como o texto afirma, “uma classe pode ser definida a partir de outra classe já
existente”, com isso, 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 acoplamento.
 
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.
A+
A
A-
27/02/2023, 08:13 AO2 (DP/ADAP Outubro): Programação Orientada a Objetos
https://famonline.instructure.com/courses/26591/quizzes/123499 7/20
 
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.
0,6 / 0,6 ptsPergunta 4
Leia o texto a seguir:
 
A maioria das declarações de variável de instância é precedida pela palavra-chave private. Da mesma
forma que public, private é um modificador de acesso. As variáveis ou métodos declarados com o
modificador de acesso private só são acessíveis a métodos da classe em que isso ocorre.
 
Fonte: DEITEL, H.; DEITEL, P. Java: como programar. 10. ed. São Paulo: Pearson Education do Brasil,
2017, p. 58.
 
Considerando as informações apresentadas, avalie as asserções abaixo e a relação proposta entre elas.
 
A+
A
A-
27/02/2023, 08:13 AO2 (DP/ADAP Outubro): Programação Orientadaa Objetos
https://famonline.instructure.com/courses/26591/quizzes/123499 8/20
I. O uso de métodos get e set públicos em atributos private constitui uma violação do encapsulamento da
classe.
 
PORQUE
 
II. Métodos get e set permitem, respectivamente, ler e modificar o valor do atributo, e métodos públicos são
visíveis para todo o projeto.
 
A respeito dessas asserções, assinale a opção correta:
 As asserções I e II são proposições verdadeiras e a asserção II é uma justificativa correta da I. 
 As asserções I e II são proposições verdadeiras, mas a asserção II não é uma justificativa correta da I. 
 A asserção I é uma proposição verdadeira e a asserção II é uma proposição falsa. 
 A asserção I é uma proposição falsa e a asserção II é uma proposição verdadeira. Correto!Correto!
A+
A
A-
27/02/2023, 08:13 AO2 (DP/ADAP Outubro): Programação Orientada a Objetos
https://famonline.instructure.com/courses/26591/quizzes/123499 9/20
Alternativa correta.
O método get, por padrão, retorna o valor de uma variável, enquanto o método set recebe um parâmetro e,
dado que ele siga suas regras, o atribui para um atributo. Eles são usados em atributos privados – se os
atributos fossem públicos, não haveria necessidade de os usar.
Entretanto, eles não constituem uma violação de encapsulamento, pelo contrário, eles são utilizados
justamente para permitir que o objeto possa receber novas informações sem que o encapsulamento seja
violado. Ninguém pode acessar diretamente os atributos, e sim trocar mensagens através dos métodos, de
modo que o objeto tem total controle sobre o que acontecerá com o atributo através da lógica dos
métodos, podendo inclusive vetar alterações.
 As asserções I e II são proposições falsas. 
0,6 / 0,6 ptsPergunta 5
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. 
 
A+
A
A-
27/02/2023, 08:13 AO2 (DP/ADAP Outubro): Programação Orientada a Objetos
https://famonline.instructure.com/courses/26591/quizzes/123499 10/20
Quais foram os conceitos de orientação a objetos implementados pelo desenvolvedor apresentado no texto
acima?
 
 Composição e agregação. 
 Agregação e polimorfismo. 
 Herança e polimorfismo. Correto!Correto!
A alternativa está correta. A situação apresentada, indica que o desenvolvedor utilizou os conceitos de
herança e polimorfismo, que são pertinentes à área de orientação a objetos.
Herança é o processo de criação de uma nova classe, isto é, estende-se uma classe existente. A classe
filha herda seus atributos e métodos e, caso precise especificar seu comportamento, ela pode redefinir um
ou mais métodos herdados através do mecanismo de polimorfismo. 
 Herança e visibilidade. 
 Abstração e composição. 
0,6 / 0,6 ptsPergunta 6
Leia o texto a seguir:
 
A+
A
A-
27/02/2023, 08:13 AO2 (DP/ADAP Outubro): Programação Orientada a Objetos
https://famonline.instructure.com/courses/26591/quizzes/123499 11/20
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 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:
 I e II, apenas. 
A+
A
A-
27/02/2023, 08:13 AO2 (DP/ADAP Outubro): Programação Orientada a Objetos
https://famonline.instructure.com/courses/26591/quizzes/123499 12/20
 II, apenas. 
 II e III, apenas. 
 III, apenas. Correto!Correto!
Alternativa correta.
A programação orientada a objeto possui um conjunto de princípios, mas para que eles sejam
implementados, a linguagem precisa oferecer suporte a uma série de estruturas específicas, como classes
e objetos, por este motivo a afirmação I está incorreta.
A programação orientada a objeto não tem como objetivo melhorar o desempenho computacional das
aplicações, inclusive a sua “burocracia” pode tornar o programa mais lento ou pesado do que um programa
escrito em técnicas mais antigas, ou seja, a afirmação II está incorreta.
Uma das estratégias da programação orientada a objeto é justamente modularizar o código de modo que
seja fácil reutilizá-lo, e correções ou alterações podem ser feitas pontualmente em um módulo, e todos os
módulos que interagem com ele serão afetados pela mudança sem necessariamente serem alterados
também, confirmando a afirmação III como correta.
 I e III, apenas. 
0 / 0,6 ptsPergunta 7
Leia o texto abaixo:
 
A+
A
A-
27/02/2023, 08:13 AO2 (DP/ADAP Outubro): Programação Orientada a Objetos
https://famonline.instructure.com/courses/26591/quizzes/123499 13/20
Uma classe na linguagem Java pode ser um tipo de dado usado pelo programador com a instrução class,
ou um objeto já definido em algum pacote interno da linguagem. Uma classe possui a característica de
agregar objetos, formando um conjunto de objetos (quando houver mais de um objeto definido em uma
determinada classe), os quais possuem características de armazenamento de dados (seus atributos) e
funcionalidades (seus métodos). Uma classe é declarada com a instrução class, que possui a seguinte
sintaxe:
 
<qualificador> class [<nome da classe>] {
 <lista dos tipos e seus atributos)>
 <lista dos métodos>
}
 
 
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.
 
O qualificador é um elemento opcional e quando usado, deve ser representado por
 static ou void. Você respondeuVocê respondeu
A+
A
A-
27/02/2023, 08:13 AO2 (DP/ADAP Outubro): Programação Orientada a Objetos
https://famonline.instructure.com/courses/26591/quizzes/123499 14/20
A alternativa está incorreta, pois static ou void são usados junto aos métodos; static significa que
o método pode ser chamado sem que a classe seja instanciada em um objeto; e void é o tipo de dado do
retorno do método, usado quando ele não retorna nada.
É correto afirmar que o qualificador é um elemento opcional e quando usado deve ser representado por
um dos valores: public, abstract ou final. Quando ocorre o uso do qualificador public, antes do nome de
uma classe, normalmente é em uma classe pública e pode ser usada de uma forma muito extensa. Uma
classe abstract torna-se explicitamente abstrata, diferenciando-se de uma classe concreta. As classes
concretas permitem o uso de estâncias delas, enquanto uma classe abstrata não permite estâncias. Uma
classe final não permite que outras classes herdem dela suas características.
 public, abstract ou final. Resposta corretaResposta correta
 this. 
 public, private ou protected. 
 int, float, double ou String. 
0,6 / 0,6 ptsPergunta 8
Leia o texto a seguir:
 
Assim como os desenhos de engenharia de um carro podem ser reutilizados várias vezes para fabricarmuitos carros, você pode reutilizar uma classe muitas vezes para construir vários objetos. A reutilização de
A+
A
A-
27/02/2023, 08:13 AO2 (DP/ADAP Outubro): Programação Orientada a Objetos
https://famonline.instructure.com/courses/26591/quizzes/123499 15/20
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-
27/02/2023, 08:13 AO2 (DP/ADAP Outubro): Programação Orientada a Objetos
https://famonline.instructure.com/courses/26591/quizzes/123499 16/20
 As asserções I e II são proposições falsas. 
 A asserção I é uma proposição falsa e a asserção II é uma proposição verdadeira. 
 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 asserção II é uma proposição falsa. Correto!Correto!
Alternativa correta.
A programação orientada a objeto prega quatro princípios básicos: o encapsulamento, onde as
informações sobre um objeto são protegidas, a abstração, onde cada objeto possui uma interface simples
ocultando a complexidade de seu funcionamento, a herança, onde código de uma classe pode ser
reaproveitado por outra, e o polimorfismo, onde um objeto pode ser tratado como membro de diferentes
classes, ou seja, a asserção I está correta.
Entretanto, os princípios mencionados na asserção I nada têm a ver com o “Write Once, Run Anywhere”.
Linguagens orientadas a objeto podem ser compiladas, interpretadas ou híbridas. Um programa em C++,
por exemplo, precisa ser compilado novamente para cada sistema, e pode exigir modificações de um
sistema para o outro. O W.O.R.A. é um conceito que surgiu com o Java e tem a ver com arquitetura de
compilador, máquina virtual e bytecode, portanto, a asserção II está incorreta.
0,6 / 0,6 ptsPergunta 9
Leia o texto a seguir:
A+
A
A-
27/02/2023, 08:13 AO2 (DP/ADAP Outubro): Programação Orientada a Objetos
https://famonline.instructure.com/courses/26591/quizzes/123499 17/20
 
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
 
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:
A+
A
A-
27/02/2023, 08:13 AO2 (DP/ADAP Outubro): Programação Orientada a Objetos
https://famonline.instructure.com/courses/26591/quizzes/123499 18/20
 A asserção I é uma proposição verdadeira, e a asserção II é uma proposição falsa. Correto!Correto!
Alternativa correta.
Interfaces servem, precisamente, para permitir o polimorfismo entre objetos de classes não relacionadas.
Ao implementar uma interface, uma classe “assume o compromisso” de implementar todos os métodos
declarados na interface. Apesar de a funcionalidade interna poder ser diferente, a assinatura será a
mesma, isso quer dizer que todo código feito para interagir com um “objeto da interface” poderá interagir
com objetos daquela classe, pois o código espera um certo conjunto de métodos e este conjunto estará
disponível. A asserção I é verdadeira.
Porém, a relação entre uma classe e uma interface não é de herança. A interface não “transmite” nenhum
tipo de código pronto, nem possui métodos implementados, ela possui apenas as assinaturas dos
métodos, e todas as classes devem implementar esses métodos, cada qual à sua maneira. Por este
motivo, a asserção II é falsa.
 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 e a asserção II são proposições falsas. 
 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 verdadeiras, e a II é uma justificativa correta da I. 
0,6 / 0,6 ptsPergunta 10
Analise o código abaixo:
A+
A
A-
27/02/2023, 08:13 AO2 (DP/ADAP Outubro): Programação Orientada a Objetos
https://famonline.instructure.com/courses/26591/quizzes/123499 19/20
 
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?
 
 Porque ela não possui get e set para seu atributo. 
 Porque ela possui erros: atributo público e métodos private e protected. 
A+
A
A-
27/02/2023, 08:13 AO2 (DP/ADAP Outubro): Programação Orientada a Objetos
https://famonline.instructure.com/courses/26591/quizzes/123499 20/20
 Porque faltou implementar o método fala. 
 Porque ela é uma interface. 
 Porque ela é uma classe abstrata e serve apenas para herança. Correto!Correto!
Alternativa correta.
O “abstract” logo na primeira linha indica que ela é uma classe abstrata. Classes abstratas não podem ser
utilizadas para instanciar objetos, apenas para realizar herança. Classes abstratas não são interfaces: elas
servem para herança e podem ter métodos implementados e atributos que podem ser herdados, enquanto
a interface serve apenas para obrigar outras classes a implementar métodos específicos.
O método “fala” não estar implementado é um impeditivo, porque classes com métodos não
implementados devem ser abstratas, porém, simplesmente implementar o método não resolveria: a palavra
“abstract” no topo manterá a classe abstrata mesmo que seus métodos estejam todos implementados.
Apesar de o padrão ser atributos serem privados, métodos serem públicos e métodos get e set serem
disponibilizados para acessar os atributos, nada disso é obrigatório, e não seguir o padrão não é impeditivo
para que a classe funcione ou possa ser instanciada.
Pontuação do teste: 5,4 de 6
A+
A
A-

Continue navegando