Buscar

Questionário - Programação Orientada à Objetos - Unidade I - UNIP

Prévia do material em texto

Curso
	PROGRAMAÇÃO ORIENTADA A OBJETOS I
	Teste
	QUESTIONÁRIO UNIDADE I
	Status
	Completada
	Resultado da tentativa
	2,5 em 2,5 pontos  
	Tempo decorrido
	5 horas, 20 minutos
	Resultados exibidos
	Todas as respostas, Respostas enviadas, Respostas corretas, Comentários, Perguntas respondidas incorretamente
· Pergunta 1
0,25 em 0,25 pontos
	
	
	
	Considere a seguinte estrutura de classes: a classe Postagem representa o caso geral, e as classes Carta, Telegrama e Encomenda representam classes especializadas que herdam da classe Postagem.
Assinale a alternativa correta:
	
	
	
	
		Resposta Selecionada:
	a. 
Um método que receba como parâmetro um objeto da classe Postagem poderá receber também um objeto das classes Carta, Telegrama e Encomenda.
	Respostas:
	a. 
Um método que receba como parâmetro um objeto da classe Postagem poderá receber também um objeto das classes Carta, Telegrama e Encomenda.
	
	b. 
Um método que receba como parâmetro um objeto da classe Carta poderá receber também um objeto da classe Postagem.
	
	c. 
Um método que receba como parâmetro um objeto da classe Postagem não poderá receber como parâmetro um objeto de qualquer outra classe.
	
	d. 
Um método que receba como parâmetro um objeto da classe Encomenda também poderá receber um objeto da classe Carta e Telegrama.
	
	e. 
Um método que receba um objeto da classe Telegrama também poderá receber um objeto de qualquer uma das classes do enunciado.
	Comentário da resposta:
	Resposta: A
Comentário: com o uso do polimorfismo de classes, também conhecido como polimorfismo de objetos ou polimorfismo dinâmico, podemos tratar um objeto de uma classe como se fosse de outra, desde que a outra classe seja uma superclasse. Em outras palavras, quando uma classe pode ser utilizada, qualquer uma de suas subclasses também poderá ser. No exemplo do exercício, se um objeto da classe Postagem pode ser usado, um objeto de quaisquer de suas subclasses também poderá ser. Afinal, uma Carta é um tipo de Postagem, assim como um Telegrama e uma Encomenda.
	
	
	
· Pergunta 2
0,25 em 0,25 pontos
	
	
	
	Qual a novidade introduzida pelo paradigma estruturado que continua sendo adotada até hoje, mesmo quando utilizamos o paradigma orientado a objetos?
	
	
	
	
		Resposta Selecionada:
	a. 
A proibição do uso de desvios incondicionais.
	Respostas:
	a. 
A proibição do uso de desvios incondicionais.
	
	b. 
O uso de objetos.
	
	c. 
O uso de classes.
	
	d. 
O uso de polimorfismo.
	
	e. 
O uso de herança.
	Comentário da resposta:
	Resposta: A
Comentário: o paradigma estruturado surgiu quando se percebeu que o uso de desvios incondicionais costuma deixar o código de computador mais difícil de ser entendido, tornando sua manutenção demorada e cara. Por isso, mesmo no paradigma orientado a objetos, não se utilizam mais desvios incondicionais.
	
	
	
· Pergunta 3
0,25 em 0,25 pontos
	
	
	
	Qual das alternativas abaixo não se aplica ao conceito de “encapsulamento”?
	
	
	
	
		Resposta Selecionada:
	b. 
Promover a reutilização de código.
	Respostas:
	a. 
Ocultar o comportamento de um algoritmo.
	
	b. 
Promover a reutilização de código.
	
	c. 
Ocultar a estrutura interna de um objeto.
	
	d. 
Garantir que um objeto modele apenas aspectos relacionados ao conceito que ele abstrai.
	
	e. 
Garantir que nenhum conceito relacionado ao objeto seja modelado em algum outro objeto.
	Comentário da resposta:
	Resposta: B
Comentário: o encapsulamento significa que devemos isolar, ocultar, encapsular (colocar uma cápsula em torno de) um conceito. Qualquer dado e comportamento relacionados ao conceito modelado pelo objeto devem estar no próprio objeto. Além disso, se um dado ou comportamento diz respeito ao conceito modelado pelo objeto, ele não deve aparecer em nenhum outro objeto.
	
	
	
· Pergunta 4
0,25 em 0,25 pontos
	
	
	
	Qual é a motivação para o surgimento do paradigma orientado a objetos?
	
	
	
	
		Resposta Selecionada:
	b. 
O tratamento simultâneo de dados e comportamentos.
	Respostas:
	a. 
O reúso de código.
	
	b. 
O tratamento simultâneo de dados e comportamentos.
	
	c. 
O aumento do desempenho de sistemas computacionais.
	
	d. 
A redução do custo de processadores e memórias, permitindo a criação de sistemas cada vez mais complexos.
	
	e. 
O surgimento de ambientes operacionais gráficos.
	Comentário da resposta:
	Resposta B
Comentário: a ideia básica por trás do paradigma orientado a objetos é o desenvolvimento simultâneo de dados e dos comportamentos que manipulam esses dados numa única entidade, o objeto. Assim, o objeto modela um conceito tanto com os dados relacionados a esse conceito quanto com os comportamentos que utilizam e manipulam esses mesmos dados.
	
	
	
· Pergunta 5
0,25 em 0,25 pontos
	
	
	
	Qual é a relação entre classe e objeto?
	
	
	
	
		Resposta Selecionada:
	a. 
O objeto é uma instância de uma classe.
	Respostas:
	a. 
O objeto é uma instância de uma classe.
	
	b. 
Uma classe é uma instância de um objeto.
	
	c. 
Ambos são a mesma coisa.
	
	d. 
A classe é o código-fonte e o objeto é o código compilado.
	
	e. 
O objeto é o código-fonte e a classe é o código compilado.
	Comentário da resposta:
	Resposta: A
Comentário: a classe é um conjunto de objetos que compartilham da mesma estrutura interna. Se dois objetos pertencem à mesma classe, ambos possuem os mesmos métodos e atributos, ainda que os valores armazenados pelos atributos sejam diferentes. Quando escrevemos um código de computador, estamos descrevendo uma classe com a qual vários objetos podem ser instanciados a partir dessa mesma classe.
	
	
	
· Pergunta 6
0,25 em 0,25 pontos
	
	
	
	Quando usamos as expressões “paradigma estruturado” e “paradigma orientado a objetos”, usamos o termo “paradigma” com qual significado?
	
	
	
	
		Resposta Selecionada:
	d. 
Linguagem de programação e análise de sistemas.
	Respostas:
	a. 
Padrão.
	
	b. 
Comportamento praticado de maneira automática.
	
	c. 
Práticas de desenvolvimento que são ruins e, por isso, que devem ser abandonadas.
	
	d. 
Linguagem de programação e análise de sistemas.
	
	e. 
Metodologia de desenvolvimento de sistemas.
	Comentário da resposta:
	Resposta: D
Comentário: nesse sentido, o termo “paradigma” é utilizado para se referir tanto à análise de sistemas quanto às linguagens de programação. Temos análise estruturada de sistemas e linguagens estruturadas de programação, assim como temos análise de sistemas orientada a objetos e linguagens de programação orientadas a objetos.
	
	
	
· Pergunta 7
0,25 em 0,25 pontos
	
	
	
	Sobre a agregação, podemos dizer:
	
	
	
	
		Resposta Selecionada:
	a. 
É uma associação em que pode ser entendido o relacionamento entre “o todo e a parte”.
	Respostas:
	a. 
É uma associação em que pode ser entendido o relacionamento entre “o todo e a parte”.
	
	b. 
Com a agregação podemos realizar a reutilização de código.
	
	c. 
É a maneira com que se realiza a herança entre classes.
	
	d. 
É um relacionamento entre classes que promove maior eficiência, reduzindo o uso de memória ocupada pelos objetos.
	
	e. 
É como a orientação a objetos associa dados e comportamentos no objeto.
	Comentário da resposta:
	Resposta: A
Comentário: quando temos duas classes que se relacionam com uma associação e, além disso, reconhecemos em uma delas o conceito de “todo” e na outra o conceito de “parte”, dizemos que a associação caracteriza uma agregação.
	
	
	
· Pergunta 8
0,25 em 0,25 pontos
	
	
	
	Sobre a associação, podemos dizer:
	
	
	
	
		Resposta Selecionada:
	d. 
É uma maneira de se relacionar classes entre si.
	Respostas:
	a. 
É uma modalidade de polimorfismo.
	
	b. 
Com a associação podemos realizar a reutilização de código.
	
	c. 
É a maneira com que se realiza a herança entre classes.
	
	d. 
É uma maneira de se relacionar classes entre si.
	
	e. 
É como a orientação a objetos associa dados e comportamentos no objeto.
	Comentário da resposta:
	Resposta: D
Comentário: cada classe deve abstrair um conceito por completo. Em geral,diferentes conceitos se relacionam no problema estudado. Por exemplo, o conceito de pessoa relaciona-se com o conceito de endereço e o de conta bancária. Assim, se esses conceitos forem abstraídos nas classes Pessoa, Endereço e Conta Corrente, essas classes podem se relacionar com o uso da associação.
	
	
	
· Pergunta 9
0,25 em 0,25 pontos
	
	
	
	Sobre a generalização, podemos dizer:
	
	
	
	
		Resposta Selecionada:
	e. 
É a maneira com que se podem definir atributos e métodos comuns a várias classes.
	Respostas:
	a. 
É uma associação em que é possível reconhecer o relacionamento entre “oculto e visível”.
	
	b. 
É uma associação em que é possível reconhecer o relacionamento entre “classe e objeto”.
	
	c. 
É a manifestação do polimorfismo entre classes.
	
	d. 
É a maneira como a orientação a objetos relaciona dados e comportamentos no objeto.
	
	e. 
É a maneira com que se podem definir atributos e métodos comuns a várias classes.
	Comentário da resposta:
	Resposta: E
Comentário: quando identificamos que diversas classes possuem atributos e/ou métodos em comum, podemos defini-los uma única vez numa classe que representa o caso geral. Com o uso da generalização, podemos então definir as classes especializadas que irão herdar as características (atributos e métodos) da classe geral. Assim, definem-se os atributos e métodos das classes especializadas uma única vez, promovendo o reúso de código.
	
	
	
· Pergunta 10
0,25 em 0,25 pontos
	
	
	
	Sobre polimorfismo, é errado afirmar que:
	
	
	
	
		Resposta Selecionada:
	a. 
Ajuda a economizar memória e aumentar a velocidade de processamento.
	Respostas:
	a. 
Ajuda a economizar memória e aumentar a velocidade de processamento.
	
	b. 
Melhora a clareza do código.
	
	c. 
Ocorre quando se usa sobrecarga e sobrescrita.
	
	d. 
Facilita o trabalho do programador.
	
	e. 
Só existe no paradigma orientado a objetos.
	Comentário da resposta:
	Resposta: A
Comentário: como praticamente todo recurso de orientação a objetos, o polimorfismo não ajuda a economizar memória ou poder de processamento. A orientação a objetos visa tornar o trabalho de desenvolvimento de sistemas mais fácil, permitindo que o desenvolvedor crie algoritmos cada vez mais complexos. Historicamente, esse paradigma passa a ser mais difundido conforme o custo de memória e de poder de processamento vai se tornando mais barato.

Continue navegando