Buscar

prova

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1.
	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.
	2.
	O encapsulamento é um dos pilares da programação orientada a objetos, e sua utilização de forma correta serve como embasamento para os outros dois pilares: a herança e o polimorfismo. Com relação ao encapsulamento, assinale a alternativa CORRETA:
	 a)
	Através do encapsulamento, podemos proteger os valores internos dos objetos de acessos desnecessários.
	 b)
	O objetivo principal do encapsulamento é obter um alto acoplamento entre as classes.
	 c)
	Para fazer uso do encapsulamento, basta modificarmos a visibilidade de nossos atributos.
	 d)
	O encapsulamento permite que os objetos se comuniquem através de mais caminhos.
	3.
	A utilização de classes abstratas permite uma maior confiabilidade na definição da hierarquia de herança, pois possui características especiais que impedem sua utilização de forma errônea por outros desenvolvedores. Considerando que as palavras sublinhadas na figura a seguir representam erros de compilação, classifique V para as sentenças e F para as falsas:
(    ) Bastaria colocar a palavra reservada abstract na frente da palavra class para resolver todos os problemas da classe.
(    ) Uma classe abstrata pode possuir métodos concretos.
(    ) Somente classes abstratas podem possuir métodos abstratos.
(    ) O primeiro método imprime() deve receber um parâmetro de qualquer tipo para que seu erro de compilação seja corrigido.
Agora, assinale a alternativa que apresenta a sequência CORRETA:
	
	 a)
	V - V - F - V.
	 b)
	V - V - F - F.
	 c)
	V - F - F - V.
	 d)
	F - V - V - F.
	4.
	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 - V - F - V.
	 b)
	V - F - F - V.
	 c)
	V - V - V - F.
	 d)
	F - V - F - V.
	5.
	A coesão é a característica que faz com que uma classe tenha somente uma responsabilidade dentro do sistema, o que faz com que a sua correção, em caso de erros ou a manutenção em caso de evolução, seja simplificada. No que se refere à coesão de uma classe, assinale a alternativa CORRETA:
	 a)
	Tanto a coesão quanto o encapsulamento são obtidos na linguagem de programação Java através do modificador de acesso private.
	 b)
	Se uma classe tiver uma e somente uma responsabilidade, a probabilidade de esta sofrer manutenção diminui.
	 c)
	Uma classe coesa é, necessariamente, uma classe com alto acoplamento.
	 d)
	A coesão, embora seja uma característica importante, não auxilia o encapsulamento de uma classe.
	6.
	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:
	
	 a)
	Somente a sentença II está correta.
	 b)
	As sentenças I e II estão corretas.
	 c)
	Somente a sentença I está correta.
	 d)
	As sentenças II e III estão corretas.
	7.
	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 II, III e IV estão corretas.
	 c)
	As afirmativas I e IV estão corretas.
	 d)
	As afirmativas I e III estão corretas.
	8.
	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 uma situação na qual duas classes são fortemente acopladas, a comunicação entre estas torna-se mais difícil.
	 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 um sistema em que ocorre alto acoplamento, a performance tende a ser baixa.
	9.
	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)
	V - F - F - V.
	 c)
	F - V - F - V.
	 d)
	F - F - V - V.
	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 paraas sentenças verdadeiras e F para as falsas:
(    ) 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)
	F - V - F - F.
	 b)
	V - F - V - V.
	 c)
	V - V - F - V.
	 d)
	V - V - F - F.
	1.
	No paradigma de orientação a objetos, uma classe é uma estrutura que abstrai um conjunto de objetos que possuem características em comum, e é composta, geralmente, por três elementos básicos: nome, atributos e métodos. Com relação ao nome, assinale a alternativa CORRETA:
	 a)
	Por recomendação, todo nome de uma classe deve começar com letra maiúscula.
	 b)
	O nome indica quais serão os tipos de dados utilizados pela classe em questão.
	 c)
	O nome define o local de um determinado objeto, enquanto ele está na memória do computador.
	 d)
	Também conhecido como definição, o nome descreve as funcionalidades de uma determinada classe.
	2.
	A linguagem de programação Java possui diversos operadores, como operadores aritméticos, operadores lógicos, operadores relacionais e operadores binários. Cada operador é aplicado conforme necessário, porém, em situações que precisamos realizar a comparação entre dois valores numéricos, utilizamos, normalmente, os operadores relacionais. Considerando o código apresentado na figura anexa, classifique V para as sentenças verdadeiras e F para as falsas:
(    ) O resultado das expressões nas linhas 7, 8 e 11 é, respectivamente, "false", "true" e "true".
(    ) Apenas as expressões das linhas 7, 10 e 11 apresentarão resultado "true".
(    ) O resultado da linha 7 só seria "true" se o valor armazenado na variável 'var1' fosse múltiplo do valor armazenado na variável 'var2'.
(    ) O valor que será impresso no console do Java após a execução da linha 9 é "true".
Agora, assinale a alternativa que apresenta a sequência CORRETA:
	
	 a)
	F - F - V - V.
	 b)
	V - F - V - V.
	 c)
	V - V - V - F.
	 d)
	V - F - F - V.
	3.
	A linguagem de programação Java obedece ao conceito de tipagem forte, em que todas as variáveis declaradas em uma classe ou interface devem ter seu tipo definido no momento da declaração. Com relação à tipagem e à definição das variáveis na linguagem Java, classifique V para as sentenças verdadeiras e F para as falsas:
(    ) Não existe limitação para o número de atributos dentro de uma classe na linguagem de programação Java.
(    ) O valor assumido pelos atributos de um objeto representam o estado interno de um objeto.
(    ) Cada instância de uma classe pode possuir valores distintos para seus atributos.
(    ) Através da declaração ?String nome;? dentro de uma classe, cria-se uma variável cujo valor sempre será compartilhado entre todas as instâncias.
Agora, assinale a alternativa que apresenta a sequência CORRETA:
	 a)
	V - V - V - F.
	 b)
	V - F - F - V.
	 c)
	F - V - F - V.
	 d)
	V - F - F - F.
	4.
	Uma linguagem de programação é um vocábulo e um conjunto de regras gramaticais usadas para escrever programas de computador, sendo que cada linguagem possui suas próprias características e peculiaridades. No que se refere ao desenvolvimento de sistemas e à linguagem de programação Java, analise as sentenças a seguir:
I- Há oito tipos de dados primitivos suportados no Java, que são: "byte", "short", "int", "long", "float", "doube", "logic" e "char". 
II- A linguagem Java suporta apenas comentários de uma única linha, utilizando uma sequência de duas barras, como "// esta linha será interpretada como um comentário".
III- Os três operadores relacionais E (representado por &&), OU (representado por '') e NÃO (representado por !) permitem verificar se o valor de dois operandos é igual, maior, menor ou diferente. 
IV- Na linguagem de programação Java, podemos definir uma estrutura de repetição de três maneiras, que são: "while"; "do-while"; e "for". 
Agora, assinale a alternativa CORRETA:
	 a)
	As sentenças II, III e IV estão corretas.
	 b)
	As sentenças I e IV estão corretas.
	 c)
	Somente a sentença IV está correta.
	 d)
	As sentenças I, II e III estão corretas.
	5.
	Existem quatro plataformas para a programação em Java: Java Platform Standard Edition (Java SE), Java Platform Enterprise Edition (Java EE), Java Platform Mobile Edition (Java ME) e Java FX. Cada plataforma é destinada a um tipo diferente de aplicação e possui o seu conjunto de APIs. Com relação à plataforma Java SE, analise as afirmativas a seguir:
I- É construída com base na Java Platform Enterprise Edition. 
II- Provê a API (Application Program Interface) com as principais funcionalidades da linguagem de programação Java. 
III- Define os tipos primitivos. 
IV- Permite a criação de RIA (Rich Internet Applications) usando interfaces aceleradas por hardware. 
Agora, assinale a alternativa CORRETA:
	 a)
	As afirmativas II e III estão corretas.
	 b)
	As afirmativas I e IV estão corretas.
	 c)
	Somente a afirmativa I está correta.
	 d)
	As afirmativas II, III e IV estão corretas.
	6.
	A programação orientada a objeto não é apenas uma forma de programar, é também um jeito de pensar em um problema utilizando conceitos do mundo real e não somente conceitos computacionais. Considerando os conceitos da programação orientada a objetos, analise as sentenças a seguir:
I- O objeto tem determinadas propriedades que o caracterizam e que são armazenadas no próprio objeto. As propriedades de um objeto são chamadas de instâncias. 
II- As mensagens são informações enviadas ao objeto para que ele se comporte de uma determinada maneira. Um programa orientado a objetos em execução consiste de envios, interpretações e respostas às mensagens. São os métodos e os procedimentos residentes nos objetos, que determinam como eles atuarão ao receber as mensagens. 
III- O relacionamento de associação é caracterizado quando um objeto invoca o método de outro objeto. 
Agora, assinale a alternativa CORRETA:
	 a)
	Somente a sentença I está correta.
	 b)
	Somente a sentença II está correta.
	 c)
	As sentenças II e III estão corretas.
	 d)
	As sentenças I e III estão corretas.
	7.
	Para que se utilize os conceitos e, consequentemente, tire-se proveito das vantagens da programação orientada a objetos, faz-se necessária a utilização de uma linguagem de programação que permita a implementação do encapsulamento, da herança e do polimorfismo. A linguagem de programação Java implementa estas características de maneira rígida, o que a torna bastante eficiente no ensino da programação orientada a objetos. No que se refere à plataforma Java, analise as sentenças a seguir:
I- O Java é considerado multiplataforma, pois é possível executar aplicações Java em qualquer sistema operacional ou dispositivo que tenha uma implementação da Máquina Virtual Java (JVM).
II- O c++ teve sua sintaxe baseada no Java, dado o grande número de programadores da linguagem.
III- A máquina virtual permite que o Java gerencie de forma direta e sem interferência os recursos do sistema operacional, como acesso à rede e ao disco.
IV- É possível desenvolver em Java com diversos editores gratuitos existentes no mercado.
Agora, assinale a alternativa CORRETA:
	 a)
	As sentenças I e IV estão corretas.
	 b)
	As sentenças II e III estão corretas.
	 c)
	As sentenças I e II estão corretas.
	 d)
	As sentenças II e IV estão corretas.
	8.
	Uma das principais vantagens da plataforma Java é sua característica multiplataforma, na qual é possível executar aplicações Java em praticamente qualquer sistema operacional ou dispositivo que tenha uma implementação da Máquina Virtual Java (JVM). Com relação à utilização de uma JVM como ambiente para o desenvolvimento de programas, analise as sentenças a seguir:
I- O Java é considerado multiplataforma, poisé possível desenvolver em Java com diversos editores gratuitos existentes no mercado.
II- A JVM faz o intermédio das solicitações feitas entre as aplicações Java e o Sistema Operacional, como, por exemplo, acesso à impressora.
III- A memória disponível para a JVM é sempre a totalidade da memória disponível no sistema operacional.
IV- Java inspirou-se em outras linguagens de programação para implementar o conceito de máquina virtual, como, por exemplo, a linguagem Eiffel.
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 II e IV estão corretas.
	 d)
	As sentenças III e IV estão corretas.
	9.
	Observe a tabela anexa que mostra as cinco primeiras linguagens de programação classificadas no TIOBE Programming Community Index, que classifica a popularidade das linguagens de programação com base no número de engenheiros qualificados no mundo, cursos e fornecedores de terceiros. Classifique V para as sentenças verdadeiras e F para as falsas:
(    ) A linguagem de programação Java, diferentemente das linguagens convencionais, é compilada para um bytecode que é executado por uma máquina virtual.
(    ) Python é uma linguagem de programação compilada, de propósito geral e estruturada. Foi utilizada por pesquisadores na década de 1970 para desenvolver o sistema operacional Unix.
(    ) Todas as cinco primeiras linguagens classificadas em janeiro/2017 são linguagens orientadas a objetos.
(    ) A compilação de um programa escrito em C++ tem como resultado um único arquivo com código executável para uma plataforma/sistema operacional específico.
Agora, assinale a alternativa que apresenta a sequência CORRETA:
	
	 a)
	V - V - F - V.
	 b)
	V - V - V - F.
	 c)
	F - V - F - F.
	 d)
	V - F - F - V.
	10.
	Diferentemente de outras linguagens, a plataforma Java utiliza o conceito de máquina virtual, garantindo que os programas desenvolvidos não necessitem conhecer os detalhes das chamadas de sistema ou as bibliotecas específicas do sistema operacional em questão. Com relação à JVM (Java Virtual Machine), classifique V para as sentenças verdadeiras e F para as falsas:
(    ) Para garantir a velocidade na alocação de memória, a máquina virtual libera um canal direto entre a aplicação Java e a memória RAM do computador.
(    ) A utilização de uma máquina virtual para execução dos programas garantem a independência de plataforma.
(    ) A otimização de código realizada pela máquina virtual garante que os programas Java sejam executados de maneira mais rápida se comparada aos programas compilados para código nativo de uma determinada plataforma/sistema operacional.
(    ) A escrita de código malicioso em Java é dificultada em função da segurança proveniente da máquina virtual, que valida toda e qualquer interação feita com o sistema operacional.
Agora, assinale a alternativa que apresenta a sequência CORRETA:
	 a)
	V - F - F - V.
	 b)
	V - V - V - F.
	 c)
	F - V - F - V.
	 d)
	F - F - V - V.

Outros materiais