Buscar

Prévia do material em texto

01/08/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/75483/novo/1 1/6
APOL 4
PROTOCOLO: 20160621123968698BB5CGUILHERME BAUCE MACHADO - RU: 1239686 Nota: 100
Disciplina(s):
Programação Orientada a Objetos
Data de início: 21/06/2016 20:36
Prazo máximo entrega: - 
Data de entrega: 21/06/2016 20:59
Questão 1/10
Conforme vimos anteriormente, o paradigma do encapsulamento significa modificarmos a visibilidade dos atributos de 
uma classe para que os mesmos não possam ser acessados diretamente por outros objetos. O acesso aos mesmos deve 
ser feito através de métodos públicos, criados para este fim.
Para termos encapsulamento na classe abaixo, qual a alternativa que representa os valores de ( I ) e ( II ):
public class Cachorro {
            ( I ) String nome;
            ( I ) String raca;
 
            ( II ) void setNome(String nome) {
                       this.nome = nome;
            }
            ( II ) void setRaca(String raca) {
                       this.raca = raca;
            }
            ( II ) String getNome() {
                       return this.nome;
            }
            ( II ) String getRaca() {
01/08/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/75483/novo/1 2/6
                       return this.raca;
            }
A abstract e protected
B public e public
C final e public
D private e public
E protected e abstract
Questão 2/10
Conforme vimos, a programação orientada a objetos define alguns paradigmas que nos permitem, ao utiliza­los, obter 
vantagens no desenvolvimento dos softwares.
Levando­se em conta o descrito acima, assinale a opção correta:
A encapsulamento não é possível de feito em linguagem Java.
B na associação temos objetos que são relacionados a outros sem relação de pertencimento.
C herança é um paradigma de POO em que temos o mesmo método sendo sobrescrito.
D métodos públicos não podem ser acessados se a classe que os define for declarada como privada.
E o método construtor de uma classe não pode ser declarado como privado.
Questão 3/10
A programação orientada a objetos possui paradigmas que são referentes à maneira como dois objetos se relacionam.
Dentre os relacionamentos mostrados, assinale a opção abaixo que possui dois deles:
A agregação e composição
Você acertou!
O paradigma do encapsulamento, como vimos no slide 5 da aula 4, prevê que os atributos da classe sejam sempre
privados, com métodos de acesso públicos.

Você acertou!
A relação de associação não prevê pertencimento, ou seja, os objetos são associados entre si, existindo quando não
associados, conforme vimos no slide 8 da aula 4.

Você acertou!
A agregação e a composição são tipos de associação, que é um paradigma da POO, conforme vimos nos slides 8, 9
e 10 da aula 4.

01/08/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/75483/novo/1 3/6
B generalização e composição
C generalização e especialização
D composição e dependência
E especialização e agregação
Questão 4/10
Considerando os tipos de relacionamento entre objetos que o paradigma da Associação descreve e o enunciado a seguir: 
Considere um trem composto por uma locomotiva e por vários vagões. A classe Trem tem os métodos addVagao() e 
removeVagao().
Indique o tipo de relacionamento entre as classes Trem e Vagão:
A associação
B composição
C dependência
D generalização
E herança
Questão 5/10
A programação orientada a objetos é baseada em diversos conceitos, ou paradigmas, tais como encapsulamento, 
herança, polimorfismo e abstração.
Com relação a esses conceitos, é correto afirmar que:
A o conceito de encapsulamento é alcançado por meio da definição da visibilidade pública aos atributos e
métodos.
B herança é um mecanismo que permite que uma classe herde todo o comportamento e os atributos de outra
classe. Em Java, pode­se implementar tanto a herança única quanto a herança múltipla.
C interface pode ser considerada como a forma com que um objeto se apresenta para outros, no que diz
respeito aos seus atributos e métodos. Em Java, uma mesma classe não pode implementar mais de uma
interface.
D polimorfismo é o uso de um mesmo nome para identificar diferentes implementações dos métodos.
Seu uso é comum na definição de construtores, em que os mesmos podem ser implementados em
diferentes versões para as diferentes formas de se instanciar a classe.
Você acertou!
Na relação de composição, temos uma interdependência entre o todo e as partes, ou seja, uma não existe sem a
outra, conforme vimos no slide 10 da aula 4.
Neste caso, não existirá trem sem vagão e o vagão não existirá sem o trem.

01/08/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/75483/novo/1 4/6
E para uma classe ser considerada abstrata, todos os seus métodos devem ser abstratos. Em Java, para se
definir uma classe abstrata deve­se utilizar a palavra chave “abstract” no início de sua declaração.
Questão 6/10
Em um sistema de software, escrito em linguagem Java, temos duas classes, X e Y com um relacionamento hierárquico, 
sendo que Y é subclasse de X.
Este é um exemplo de qual paradigma da POO?
A encapsulamento
B polimorfismo estático
C herança
D agregação
E abstração
Questão 7/10
Para construir um sistema de software será necessário construir as classes Cliente, com os atributos código, nome e 
endereço, Fornecedor, com os atributos código, nome, endereço e representante e Funcionário, com os atributos código, 
nome e endereço.
Sobre este sistema e a POO, assinale a opção correta:
A podemos criar uma classe chamada Pessoa com os atributos comuns a todas as classes e fazer com
que todas sejam subclasses de Pessoa.
B não é possível utilizar a herança na classe Fornecedor, pois a mesma não tem todos os atributos iguais às
outras classes.
C neste caso não pode haver reaproveitamento de código, pois não há como utilizar herança neste caso.
Você acertou!
Conforme vimos no slide 3 da aula 4, um dos paradigmas da orientação a objetos é o polimorfismo, no qual temos
várias implementações para o mesmo método.

Você acertou!
A herança é um paradigma de programação orientada a objetos em que existe uma relação entre uma classe base e
uma classe derivada, que pode ter acesso aos atributos e aos métodos da classe base, conforme visto no slide 3 e 4
da aula 5.

Você acertou!
A herança é um paradigma de programação orientada a objetos em que existe uma relação entre uma classe base e
uma classe derivada, que pode ter acesso aos atributos e aos métodos da classe base, conforme visto no slide 3 e 4
da aula 5.

01/08/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/75483/novo/1 5/6
D podemos utilizar a composição para que todas as classes juntas componham  o sistema.
E podemos utilizar o encapsulamento dos dados para termos acesso a todos os atributos comuns.
Questão 8/10
Dado o código abaixo, escrito em linguagem Java: 
 
class Pessoa {
            protected String nome;
}
 
class Funcionario extends Pessoa {
            public String getNome() {
                       return nome;
            }
}
Este código:
A mostra Funcionario como uma subclasse de Pessoa, que está compartilhando o atributo nome.
B demonstra o encapsulamento dos dados de Funcionario.
C mostra o paradigma da agregação, onde Funcionario agrega Pessoa.
D não irá funcionar no Java, pois para termos herança no Java utilizamos a palavra chave ‘implements’.
E o método getNome não pode utilizar o atributonome, pois ele está protegido na superclasse.
Questão 9/10
Um dos principais paradigmas da programação orientada a objetos é definido como uma relação hierárquica entre duas 
classes, em que temos uma classe base e outra derivada da classe base, é chamado de herança.
Você acertou!
A herança é um paradigma de programação orientada a objetos em que existe uma relação entre uma classe base e
uma classe derivada, que pode ter acesso aos atributos e aos métodos da classe base, conforme visto no slide 3 e 4
da aula 5.

01/08/2016 AVA UNIVIRTUS
http://univirtus­277877701.sa­east­1.elb.amazonaws.com/ava/web/#/ava/AvaliacaoUsuarioHistorico/75483/novo/1 6/6
Qual opção abaixo aplica­se a herança na linguagem Java:
A podemos tem um objeto herdando de múltiplas classes no Java.
B utilizamos a palavra­chave ‘extends’ para criar herança na linguagem Java.
C uma classe abstrata pode criar um objeto diretamente, sem necessidade de que outra classe herde dela.
D os atributos setados como protegidos na superclasse não podem ser acessados por métodos da subclasse.
E quando um programa cria um objeto da superclasse, o construtor da superclasse imediatamente chama o
construtor da subclasse (explicitamente, via super(), ou implicitamente).
Questão 10/10
Em programação orientada a objetos, podemos ter uma relação hierárquica entre duas classes, onde a subclasse herda 
da superclasse.
No caso de uma relação dessas:
A apenas as variáveis públicas de instância.
B apenas os métodos e variáveis de instância públicos.
C todas as variáveis de instância e apenas os métodos estáticos.
D todas as variáveis e métodos, exceto os públicos e os que foram sobrescritos.
E todas as variáveis de instância e os métodos que, entretanto, podem explicitamente serem
sobrescritos.
Você acertou!
Conforme vimos no slide 8 da aula 5, devemos utilizar a palavra chave ‘extends’ para criar herança na linguagem
Java.

Você acertou!
A herança é um paradigma de programação orientada a objetos em que existe uma relação entre uma classe base e
uma classe derivada, que pode ter acesso aos atributos e aos métodos da classe base, conforme visto no slide 3 e 4
da aula 5.


Mais conteúdos dessa disciplina