Escolar Documentos
Profissional Documentos
Cultura Documentos
Quiz 02
Quiz 02
PAINEL > MINHAS TURMAS > 2020_1 - PROGRAMAÇÃO E DESENVOLVIMENTO DE SOFTWARE II - METATURMA
> PROGRAMAÇÃO ORIENTADA A OBJETOS (POO) - PARTE 1 (DATA LIMITE: 20/09, 27 PTS) > QUIZ - ENCAPSULAMENTO (1,0 PT)
Questão 1 Alguns conceitos da orientação a objetos estão disponibilizados na coluna I. Estabeleça a correta correspondência
Correto com seus significados disponibilizados na coluna II.
Atingiu 1,00 de
1,00 Coluna I
1. Abstração
2. Classe
3. Polimorfismo
4. Herança
5. Encapsulamento
Coluna II
( ) Distingue a especificação e a implementação das operações de um objeto.
( ) Conjunto de objetos que possuem o mesmo tipo.
( ) Permite ao usuário definir tipos de forma incremental, a partir de tipos existentes.
( ) Elucida apenas as propriedades comuns de um conjunto de objetos, omitindo os detalhes.
( ) Define que uma determinada operação pode se comportar de diferentes formas em diferentes classes.
Escolha uma:
a. 5, 4, 2, 1, 3.
b. 5, 2, 4, 3, 1.
c. 5, 2, 4, 1, 3.
d. 2, 1, 3, 4, 5.
1 of 4 21/09/2020 01:34
Quiz - Encapsulamento (1,0 pt): Revisão da tentativa https://virtual.ufmg.br/20201/mod/quiz/review.php?attempt=311705&c...
Questão 2 Um dos recursos mais interessantes na orientação a objetos é o Encapsulamento. Preencha corretamente as
Correto lacunas abaixo:
Atingiu 1,00 de
1,00
Para atingir o encapsulamento, uma das formas é definindo a visibilidade das métodos
propriedades e dos ________ de um objeto.
Membros declarados como _________ podem ser acessados somente dentro da própria protected
classe em que foram declarados
e a partir de classes _________, mas não poderão ser acessados a partir do programa que descendentes
faz uso dessa classe (manipulando o objeto em si).
Questão 3 Na orientação a objetos, para que um atributo de uma classe X possa ser acessado apenas por métodos de X e
Correto por métodos definidos em subclasses de X, sua visibilidade deve ser
Atingiu 1,00 de
1,00 Escolha uma:
a. privada (private).
b. pública (public).
c. protegida (protected).
d. estática (static).
c. usar variáveis e constantes do tipo inteiro nos métodos das classes implementadas.
2 of 4 21/09/2020 01:34
Quiz - Encapsulamento (1,0 pt): Revisão da tentativa https://virtual.ufmg.br/20201/mod/quiz/review.php?attempt=311705&c...
Questão 5
Considere o código escrito em C++:
Incorreto
// ponto.hpp
Atingiu 0,00 de
1,00 class Ponto {
public:
double _x;
double _y;
Ponto();
#include <cmath>
#include "Ponto.hpp"
class Circunferencia {
public:
Ponto* _centro;
double _raio;
Circunferencia(Ponto* centro, double raio);
double calcularArea();
};
#endif
---------------------------------------------------------------------
\\ Ponto.cpp
#include "Ponto.hpp"
Ponto::Ponto() : Ponto(0.0, 0.0) {}
Ponto::Ponto(double x, double y) : _x(x), _y(y) {}
---------------------------------------------------------------------
\\ Circunferencia.cpp
#include "Circunferencia.hpp"
Circunferencia::Circunferencia(Ponto* centro, double raio) {
this->_centro = centro;
this->_raio = raio;
}
double Circunferencia::calcularArea() {
return M_PI * pow(this->_raio, 2);
}
3 of 4 21/09/2020 01:34
Quiz - Encapsulamento (1,0 pt): Revisão da tentativa https://virtual.ufmg.br/20201/mod/quiz/review.php?attempt=311705&c...
---------------------------------------------------------------------
// main.cpp
#include <iostream>
#include "Ponto.hpp"
#include "Circunferencia.hpp"
using namespace std;
int main() {
Circunferencia* c1 = new Circunferencia(new Ponto(), 10);
cout << c1->calcularArea() << endl;
Ponto p(5.0, 5.0);
Circunferencia* c2 = new Circunferencia(&p, 10);
cout << c2->calcularArea() << endl;
delete c1;
delete c2;
return 0;
}
Como o princípio de encapsulamento poderia ser aplicado no código acima?
Escolha uma:
a. os atributos das classes Ponto e Circunferencia deveriam ser private. Dessa forma, eles só poderiam ser
acessados por métodos das próprias classes.
b. os atributos das classes Ponto e Circunferencia deveriam ser protected, e portanto, só poderiam ser
acessados por métodos das próprias classes. Os atributos das classes Ponto e Circunferencia deveriam
ser private, e portanto, só poderiam ser acessados por métodos das próprias classes.
d. os atributos da classe Ponto deveriam ser protected e os atributos da classe Circunferencia deveriam ser
private.
4 of 4 21/09/2020 01:34