Baixe o app para aproveitar ainda mais
Prévia do material em texto
28/10/2019 UNIASSELVI - Centro Universitário Leonardo Da Vinci - Portal do Aluno - Portal do Aluno - Grupo UNIASSELVI https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php 1/5 Acadêmico: Jessica de Oliveira Santana (1629702) Disciplina: Programação Orientada a Objetos (ADS17) Avaliação: Avaliação II - Individual FLEX ( Cod.:456751) ( peso.:1,50) Prova: 13618959 Nota da Prova: 10,00 Legenda: Resposta Certa Sua Resposta Errada 1. O polimorfismo é um mecanismo poderoso da programação orientada a objetos, pois permite que se adicionem novas funcionalidades a um software sem alterar partes desse mesmo software que já estejam funcionando. Com relação ao polimorfismo, classifique V para as sentenças verdadeiras e F para as falsas: ( ) O polimorfismo de sobreposição consiste na colocação de novos parâmetros em outro método que possua o mesmo nome de um método já existente. ( ) O polimorfismo paramétrico é altamente dependente da linguagem de programação, por este motivo nem todas as linguagens de programação orientadas a objetos o implementam. ( ) A sobrecarga permite redefinir completamente um método, substituindo-o nas classes que fizerem uso deste tipo de polimorfismo. ( ) As interfaces são uma maneira eficiente de implementar o polimorfismo. Agora, assinale a alternativa que apresenta a sequência CORRETA: a) V - F - F - V. b) F - V - F - V. c) V - V - F - V. d) V - V - V - F. 2. Em combinação com a definição de pacotes e classes, os modificadores de visibilidade constituem-se de uma ferramenta poderosa na definição da segurança e encapsulamento da aplicação. Com relação à utilização de modificadores de visibilidade na linguagem de programação Java, analise as sentenças a seguir: I- Um método com modificador default contido em uma classe pública não pode ser acessado em uma classe disponível em outro pacote. II- Um método com modificador public contido em uma classe pública somente pode ser acessado por uma classe disponível em outro pacote através do comando import. III- Uma classe com modificador default pode ser acessada por uma classe de outro pacote com o comando import. IV- Um método private colocado em uma classe com o modificador default não pode ser acessado por outra classe dento do mesmo pacote. Agora, assinale a alternativa CORRETA: a) As sentenças II e III estão corretas. b) Somente a sentença II está correta. c) Somente a sentença IV está correta. d) As sentenças I, II e IV estão corretas. 28/10/2019 UNIASSELVI - Centro Universitário Leonardo Da Vinci - Portal do Aluno - Portal do Aluno - Grupo UNIASSELVI https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php 2/5 3. A linguagem de programação Java permite a definição de classes abstratas, que representam ferramentas poderosas na definição de relacionamentos de herança e, consequente, reutilização e extensão de estado e comportamento. Com relação às classes abstratas da linguagem de programação Java, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Uma classe abstrata somente pode ser instanciada a partir de um construtor abstrato. ( ) Uma classe abstrata não pode possuir métodos concretos. ( ) Os métodos concretos de uma classe abstrata podem ser reutilizados, sem alteração em suas subclasses. ( ) Em uma hierarquia de herança, a primeira classe abstrata deve prover implementação para os métodos abstratos. Agora, assinale a alternativa que apresenta a sequência CORRETA: a) V - V - F - F. b) V - F - F - V. c) V - V - F - V. d) F - F - V - F. 4. Uma das principais vantagens em se desenvolver um software utilizando o paradigma da orientação a objetos, é a reutilização de código-fonte, tornando-o mais legível e fácil de realizar manutenção. Neste sentido, podemos exemplificar a facilidade de manutenção com a necessidade de criar uma coluna em uma tabela, gravando um valor fixo. Neste caso, basta alterar o método que realiza a inserção de registro nesta tabela, e o software está alterado, mesmo que o método seja invocado por mais de uma classe. Analise o código-fonte a seguir e classifique V para as sentenças verdadeiras e F para as falsas: ( ) Devido à herança, a linha 31 está correta. ( ) A classe "Carro" herda o método "getNomeModelo()" da classe "Veiculo". ( ) A classe "Veiculo" herda os métodos com modificador "public" da classe "Carro". ( ) Ocorre uma relação de herança entre as duas classes, sendo que a classe "Carro" herda atributos e métodos da classe "Veiculo". Assinale a alternativa que apresenta a sequência CORRETA: a) V - V - F - V. b) V - V - V - F. c) V - F - F - V. 28/10/2019 UNIASSELVI - Centro Universitário Leonardo Da Vinci - Portal do Aluno - Portal do Aluno - Grupo UNIASSELVI https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php 3/5 d) F - V - F - F. 5. Programação é o processo de escrita, teste e manutenção de um programa de computador. A Programação Orientada a Objetos (POO) diz respeito a um padrão de desenvolvimento que é seguido por muitas linguagens, como C# e Java. Com relação aos conceitos de programação orientada a objetos e sua implementação na linguagem Java, analise as afirmativas a seguir: I- Classes abstratas servem como modelo para outras classes que dela herdam e devem ser instanciadas utilizando a palavra reservada "new". II- Todas as classes em Java herdam, direta ou indiretamente, a classe Object. III- Interfaces podem ser utilizadas quando classes diferentes (não relacionadas) precisam de funcionalidades comuns (métodos) ou utilizam constantes comuns. IV- Na linguagem Java, é possível haver polimorfismo por meio da implementação de herança entre classes. Agora, assinale a alternativa CORRETA: a) Somente a afirmativa II está correta. b) As afirmativas I e IV estão corretas. c) As afirmativas II, III e IV estão corretas. d) As afirmativas I e III estão corretas. 6. Por intermédio da herança, um dos pilares da programação orientada a objetos, é possível reaproveitarmos características e comportamentos já implementados em outras classes sem a necessidade de realizar a cópia de código-fonte. Com relação a esse conceito, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Em uma superclasse, para acessar métodos da subclasse deve ser usada a instrução super. ( ) A implementação de herança múltipla em Java não é possível. ( ) Para definirmos um relacionamento de herança entre classes utilizamos a palavra reservada "derives". ( ) Uma subclasse herda os métodos da superclasse, entretanto, pode ter seus próprios métodos. Agora, assinale a alternativa que apresenta a sequência CORRETA: a) V - V - V - F. b) F - V - F - V. c) V - F - F - V. d) F - F - V - V. 7. Por intermédio da herança e do encapsulamento, é possível implementarmos o polimorfismo, mecanismo que permite que duas ou mais classes derivadas de uma mesma superclasse possam criar e/ou invocar métodos com a mesma assinatura, mas com comportamentos diferentes. Com relação ao conceito de polimorfismo e sua implementação na linguagem Java, analise as afirmativas a seguir: I- Polimorfismo de inclusão, polimorfismo paramétrico, sobreposição e sobrecarga são exemplos de tipos de polimorfismo. II- O Java não permite a implementação do polimorfismo paramétrico. III- A técnica de sobrecarga pode ser utilizada para distinguir, em uma determinada classe, dois métodos com o mesmo nome, o mesmo retorno e o mesmo conjunto de argumentos, mas com uma lógica diferente. IV- Na sobrecarga de métodos, é necessário utilizar a anotação @Override. Agora, assinale a alternativa CORRETA: a) As afirmativas II, III e IV estão corretas. b) As afirmativas II e IV estão corretas. c) As afirmativas I e IV estão corretas. d) Somente a afirmativa I está correta. 28/10/2019 UNIASSELVI - Centro Universitário LeonardoDa Vinci - Portal do Aluno - Portal do Aluno - Grupo UNIASSELVI https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php 4/5 8. Através do encapsulamento, é possível deixar o software mais manutenível, através da centralização de responsabilidades, ocultação de implementação e exposição de interfaces. Com relação ao encapsulamento e sua implementação na linguagem de programação Java, analise as sentenças a seguir: I- Atributos também podem ser ocultados, no sentido de garantir um maior encapsulamento. II- O modificador default permite o acesso padrão a todos dentro da mesma aplicação. III- Quanto maior o acoplamento, maior a dependência entre os objetos e, consequentemente, mais difícil a manutenção do código fonte. IV- Tanto a coesão quanto o encapsulamento são obtidos na linguagem de programação Java através do modificador de acesso protected. Agora, assinale a alternativa CORRETA: a) Somente a sentença II está correta. b) Somente a sentença IV está correta. c) As sentenças III e IV estão corretas. d) As sentenças I e III estão corretas. 9. Java é uma linguagem de programação interpretada orientada a objetos desenvolvida na década de 90 por uma equipe de programadores. Observe a figura anexa que ilustra uma situação típica em que podemos aplicar o conceito de herança de classes em Java. Considerando os conceitos de programação orientada a objetos, analise as sentenças a seguir: I- A classe FormaGeometrica, indicada pela letra A, é considerada a superclasse das classes contidas na área indicada pela letra B. II- Quadrado é uma classe filha da classe FormaGeometrica. III- O método enfatizado pela letra C, calcularArea(), está sobrescrevendo a implementação da superclasse de Triangulo. IV- A classe FormaGeometrica também é conhecida na linguagem Java como JGF. Agora, assinale a alternativa CORRETA: 28/10/2019 UNIASSELVI - Centro Universitário Leonardo Da Vinci - Portal do Aluno - Portal do Aluno - Grupo UNIASSELVI https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php 5/5 a) Somente a sentença III está correta. b) As sentenças I, II e III estão corretas. c) As sentenças I e IV estão corretas. d) As sentenças II e IV estão corretas. 10. Como regra geral, os atributos de uma classe devem ser ocultos dos demais objetos do sistema, com o objetivo de garantir o encapsulamento. Entretanto, caso algum destes atributos deva ser exposto, existem vários tipos de exposição, através dos métodos getters e setters. Com relação à utilização dos getters e setters em uma classe, classifique V para as sentenças verdadeiras e F para as falsas: I- Os métodos getters fornecem acesso de escrita a um atributo. II- Os métodos setters permitem que se altere o valor de um atributo de um objeto. III- Uma das vantagens dos setters é que se pode fazer a chamada dos mesmos sem instanciar o objeto onde eles estão. IV- Os métodos setters sempre devem retornar o valor que acabaram de passar ao atributo. Agora, assinale a alternativa CORRETA: a) As sentenças I e III estão corretas. b) Somente a sentença II está correta. c) As sentenças III e IV estão corretas. d) Somente a sentença IV está correta. Prova finalizada com 10 acertos e 0 questões erradas.
Compartilhar