Prévia do material em texto
Disciplina: Programação Orientada a Objetos Avaliação: Avaliação Final (Objetiva) - Individual FLEX Prova: Nota da Prova: 10,00 Legenda: Resposta Certa Sua Resposta Errada 1. Quando dois objetos são referenciados por variáveis diferentes, a igualdade entre estes objetos pode ser definida através da sobrescrição do método equals(), em que é determinado qual ou quais atributos devem representar esta igualdade. Considerando o mecanismo de referenciação da Java Virtual Machine e o código fonte a seguir, assinale a alternativa CORRETA: a) O console imprimirá iguais. b) Ocorre um erro na execução. c) Ocorre um erro de compilação. d) O console imprimirá diferentes. 2. No paradigma da orientação a objetos, um objeto é a instância de uma classe, isto é, cria-se em memória um objeto do tipo da classe desejada. Neste sentido, quando instancia-se uma classe, estamos criando em memória toda a classe, ou seja, todos os seus atributos e métodos. No entanto, em alguns casos, precisamos utilizar apenas algum método ou atributo de uma determinada classe, e instanciá-la em memória seria uso desnecessário da memória. Neste caso, podemos definir o modificador do método como static, permitindo que este seja acessado diretamente pelo nome da classe, sem instanciá-la. Referente ao código-fonte anexo, analise as afirmativas a seguir: I- Ao executar a classe "Exemplo", ocorrerá um erro durante a execução, pois não foi instanciada a classe "Carro". II- Os métodos"getidModelo()" e "calcularDistancia()" são acessíveis na classe "Exemplo" sem ter que instanciar a classe Carro. III- O método "calcularDistancia()" é acessível na classe "Exemplo" sem ter que instanciar a classe Carro. IV- O método "getidModelo ()" é acessível na classe "Exemplo" sem ter que instanciar a classe Carro. Assinale a alternativa CORRETA: https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=RkxYMDUzOQ==&action2=QURTMTc=&action3=NTEzMzc4&action4=MjAyMC8x&prova=MjA4MDU3MDc=#questao_1%20aria-label= https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=RkxYMDUzOQ==&action2=QURTMTc=&action3=NTEzMzc4&action4=MjAyMC8x&prova=MjA4MDU3MDc=#questao_2%20aria-label= a) As afirmativas II e IV estão corretas. b) Somente a afirmativa III está correta. c) As afirmativas I e IV estão corretas. d) As afirmativas I e III estão corretas. 3. 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 seus atributos e 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: https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=RkxYMDUzOQ==&action2=QURTMTc=&action3=NTEzMzc4&action4=MjAyMC8x&prova=MjA4MDU3MDc=#questao_3%20aria-label= a) F - V - F - F. b) V - F - F - F. c) V - V - V - F. d) V - F - F - V. 4. 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 manipular. 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 partir de 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 entre os 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 - Palio" e "3 - 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 - Palio". Assinale a alternativa CORRETA: https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=RkxYMDUzOQ==&action2=QURTMTc=&action3=NTEzMzc4&action4=MjAyMC8x&prova=MjA4MDU3MDc=#questao_4%20aria-label= a) As afirmativas I e II estão corretas. b) Somente a afirmativa IV está correta. c) As afirmativas I e III estão corretas. d) As afirmativas II e IV estão corretas. 5. 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 característica 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 II está correta. b) As sentenças I, II e III estão corretas. c) Somente a sentença IV está correta. d) As sentenças II, III e IV estão corretas. 6. 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 memória. 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: https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=RkxYMDUzOQ==&action2=QURTMTc=&action3=NTEzMzc4&action4=MjAyMC8x&prova=MjA4MDU3MDc=#questao_5%20aria-label= https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=RkxYMDUzOQ==&action2=QURTMTc=&action3=NTEzMzc4&action4=MjAyMC8x&prova=MjA4MDU3MDc=#questao_6%20aria-label= a) Ocorre um erro na execução. b) O console imprimirá diferentes. c) Ocorre um erro de compilação. d) O console imprimirá iguais. 7. 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 multiplataforma da 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, assinalea alternativa CORRETA: a) As sentenças I e II estão corretas. b) Somente a sentença IV está correta. c) Somente a sentença II está correta. d) As sentenças III e IV estão corretas. 8. 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 subclasse das classes contidas na área indicada pela letra B. II- Quadrado é uma classe filha da classe FormaGeometrica. III- A classe Triangulo implementa a interface FormaGeometrica. Agora, assinale a alternativa CORRETA: https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=RkxYMDUzOQ==&action2=QURTMTc=&action3=NTEzMzc4&action4=MjAyMC8x&prova=MjA4MDU3MDc=#questao_7%20aria-label= https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=RkxYMDUzOQ==&action2=QURTMTc=&action3=NTEzMzc4&action4=MjAyMC8x&prova=MjA4MDU3MDc=#questao_8%20aria-label= a) Somente a sentença II está correta. b) Somente a sentença I está correta. c) As sentenças II e III estão corretas. d) As sentenças I e II estão corretas. 9. Quanto maior o acoplamento entre duas classes, maior o grau de relacionamento entre estas, o que é contrário aos princípios do encapsulamento. Assinale a alternativa CORRETA que explique um malefício causado pelo alto acoplamento: a) O alto acoplamento impede que os objetos se comuniquem livremente através de mensagens, deixando o sistema pouco flexível. b) Em um sistema em que ocorre alto acoplamento, a performance tende a ser baixa. c) Quanto maior o acoplamento, maior a dependência entre os objetos e, consequentemente, mais difícil a manutenção do código fonte. d) Em uma situação na qual duas classes são fortemente acopladas, a comunicação entre estas torna-se mais difícil. 10. 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. Considerando a 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 falsas: https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=RkxYMDUzOQ==&action2=QURTMTc=&action3=NTEzMzc4&action4=MjAyMC8x&prova=MjA4MDU3MDc=#questao_9%20aria-label= https://portaldoalunoead.uniasselvi.com.br/ava/notas/request_gabarito_n2.php?action1=RkxYMDUzOQ==&action2=QURTMTc=&action3=NTEzMzc4&action4=MjAyMC8x&prova=MjA4MDU3MDc=#questao_10%20aria-label= ( ) 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 - F - V - V. b) V - V - F - F. c) F - V - F - F. d) V - V - F - V. Prova finalizada com 10 acertos e 0 questões erradas