Prévia do material em texto
Acadêmico: Douglas Longaray de Matos (1807477)
Disciplina: Programação Orientada a Objetos (ADS17)
Avaliação: Avaliação Final (Objetiva) - Individual FLEX ( Cod.:513378) ( peso.:3,00)
Prova: 20969619
Nota da Prova: 10,00
Legenda: Resposta Certa Sua Resposta Errada
1. A plataforma Java utiliza uma abordagem híbrida em sua arquitetura, em que um programa é compilado e interpretado por sua máquina virtual específica. Com relação a essa carac
específica da plataforma Java, analise as sentenças a seguir:
I- O primeiro passo após a escrita do código fonte é a compilação, em que é feita a checagem sintática e léxica.
II- O código fonte compilado gera um conjunto de códigos chamado de bytecode, que somente é entendido pela JVM.
III- O bytecode é interpretado pela JVM, que traduz suas chamadas ao sistema operacional.
IV- Existe somente uma implementação da JVM que pode ser instalada em qualquer sistema operacional e garante a característica multiplataforma da linguagem.
Agora, assinale a alternativa CORRETA:
a) Somente a sentença IV está correta.
b) As sentenças II, III e IV estão corretas.
c) As sentenças I, II e III estão corretas.
d) Somente a sentença II está correta.
2. O polimorfismo é implementado de muitas formas dentro da linguagem de programação Java, sendo que uma das mais utilizadas é a criação e a implementação de interfaces. Cons
criação e a utilização de interfaces dentro da linguagem de programação Java, analise o código fonte da figura a seguir e classifique V para as sentenças verdadeiras e F para as fa
( ) A classe SHA faz a sobrecarga do método encript() nas linhas 8 a 12.
( ) O método encript() faz parte de uma interface chamada IAlgoritmoCriptografia.
( ) Se a classe SHA fosse abstrata, ela não poderia fornecer implementação para o método gerarChaveCripto(Date data).
( ) Um vetor de IAlgoritmoCriptografia não pode conter um objeto do tipo SHA.
Agora, assinale a alternativa que apresenta a sequência CORRETA:
a) V - V - F - V.
b) V - V - F - F.
c) V - F - V - V.
d) F - V - F - F.
3. 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 s
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 subclasse das classes contidas na área indicada pela letra B.
II- Quadrado é uma classe filha da classe FormaGeometrica.
III- A classe Triangulo tem como superclasse a classe FormaGeometrica.
Agora, assinale a alternativa CORRETA:
a) As sentenças II e III estão corretas.
b) As sentenças I e II estão corretas.
c) As sentenças I e III estão corretas.
d) Somente a sentença I está correta.
4. A programação orientada a objetos acarreta um software com maior facilidade de manutenção e menor esforço para isto. Isso porque o paradigma de orientação a objetos permite a
de código-fonte, uma das vantagens oferecidas, permitindo que uma funcionalidade seja alterada em um único ponto do sistema. Outra facilidade da programação orientada a objeto
especificamente na linguagem Java, é a coleção, uma espécie de vetor dinâmico. Com relação à coleção, assinale a alternativa CORRETA:
a) O arraylist é uma coleção da linguagem Java que não armazena lista de objetos, mas, sim, uma lista de dados primitivos, como real ou caracter.
b) Uma coleção, na linguagem Java, armazena apenas lista de valores do tipo String.
c) O arraylist é um tipo de coleção da linguagem Java.
d) Uma coleção, na linguagem Java, armazena apenas lista de valores de tipos numéricos.
5. A utilização de uma máquina virtual permite que os programas escritos em Java sejam compilados em uma plataforma e interpretados em outra, garantindo o conceito de multiplataf
linguagem. Com relação ao conceito de multiplataforma da Máquina Virtual Java (JVM), analise as sentenças a seguir:
I- Java foi a primeira plataforma a utilizar uma máquina virtual para executar suas aplicações.
II- Programas como o Google Chrome e o BROffice devem necessariamente ser escritos em Java, pois possuem versões para mais de um sistema operacional.
III- Existe somente uma implementação da JVM que pode ser instalada em qualquer sistema operacional e garante a característica multiplataforma da linguagem.
IV- Cada sistema operacional possui uma implementação específica da JVM, que deve ser instalada antes da execução da aplicação Java.
Agora, assinale a alternativa CORRETA:
a) Somente a sentença IV está correta.
b) Somente a sentença II está correta.
c) As sentenças III e IV estão corretas.
d) As sentenças I e II estão corretas.
6. Dentro da linguagem de programação Java, a instanciação de um objeto é o momento em que ela passa a ocupar espaço na memória, estando pronta para receber valores para se
executar seus comportamentos. Com relação ao código fonte da classe Principal mostrado na figura a seguir, classifique V para as sentenças verdadeiras e F para as falsas:
( ) Na linha 7, é feita a instanciação de um objeto do tipo Aluno.
( ) Se comentarmos o código escrito na linha 7, as linhas 9, 10 e 12 continuarão funcionando perfeitamente.
( ) Se comentarmos o código escrito na linha 7, a linha 12 apresentará erro somente na execução.
( ) O atributo nome é do tipo String.
Agora, assinale a alternativa que apresenta a sequência CORRETA:
a) V - F - F - F.
b) V - F - F - V.
c) F - V - F - F.
d) V - V - V - F.
7. A linguagem de programação Java utiliza a Java Virtual Machine (JVM) para o gerenciamento do ciclo de vida dos objetos instanciados pelas aplicações e localização destes na me
Considerando o comportamento da JVM, o código fonte a seguir e a existência de uma classe Cachorro, cujo construtor recebe uma String, assinale a alternativa CORRETA:
a) O console imprimirá diferentes.
b) Ocorre um erro na execução.
c) Ocorre um erro de compilação.
d) O console imprimirá iguais.
8. Assim como arrays, as classes e as interfaces do Collections Framework da linguagem de programação Java possuem a vantagem de tornar o código-fonte mais legível e fácil de m
Existe o tipo de coleção ArrayList que pode armazenar uma lista de elementos de qualquer tipo, podendo ser String, Real, Double, Boolean, entre outros, ou ainda objetos criados a
classes da aplicação, como a lista de objetos do tipo Pessoa. Além deste, temos também o tipo de coleção Hashmap, que consome menos recursos quando se deseja pesquisar en
elementos armazenados, pois utiliza um objeto-chave e um objeto-valor. Referente ao código-fonte anexo, analise as afirmativas a seguir:
I- No final da execução da classe "ExemploHashmap", do código-fonte apresentado, a coleção "mapa" possui 3 elementos.
II- No final da execução da classe "ExemploHashmap", do código-fonte apresentado, a coleção "mapa" possui 2 elementos.
III- No final da execução da classe "ExemploHashmap", do código-fonte apresentado, linha 15, serão impressas 3 linhas com os seguintes valores respectivamente: "1 - Gol", "2 - Pa
Celta".
IV- No final da execução da classe "ExemploHashmap", do código-fonte apresentado, linha 15, serão impressas 2 linhas com os seguintes valores respectivamente: "1 - Gol" e "2 - P
Assinale a alternativa CORRETA:
a) As afirmativas II e IV estão corretas.
b) Somente a afirmativa IV está correta.
c) As afirmativas I e II estão corretas.
d) As afirmativas I e III estão corretas.
9. Assim como na programação procedural, a programação orientada a objetos tem recursos para tratamentos de erros. Neste sentido, a plataforma Java possui recursos robustos que
erros que podem acontecer em tempo de execução, tanto para exceções verificadas quanto para as não verificadas. É importante que o programador trate as possíveis exceções qu
ocorrer, pois, caso contrário, elas estourarão no usuário. Partindo desse pressuposto, classifique V para as sentenças verdadeiras e F para falsas:( ) Na linguagem de programação Java, podemos tratar as exceções através dos comandos "try{} catch(){}".
( ) Na linguagem de programação Java, quanto um comando tenta acessar um índice inválido de um ArrayList, será retornada a exceção "ArrayIndexOutOfBoundException".
( ) As exceções não verificadas podem ser tratadas através de validações no código-fonte, evitando a ocorrência de erros.
( ) Uma exceção nunca pode ser delegada pelo método que invocou um determinado método, o qual pode sofrer uma exceção, devendo ser tratado sempre no próprio método.
Assinale a alternativa que apresenta a sequência CORRETA:
a) F - V - F - F.
b) V - F - F - V.
c) V - V - V - F.
d) V - F - V - F.
10. 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 mesm
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 implemen
( ) 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 - V - V - F.
b) F - V - F - V.
c) V - V - F - V.
d) V - F - F - V.
Prova finalizada com 10 acertos e 0 questões erradas.