Buscar

Programação Orientada a Objetos - Avaliação Final (Objetiva)

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 7 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 7 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

Disciplina:
	Programação Orientada a Objetos 
	
	Avaliação:
	Avaliação Final (Objetiva) - Individual FLEX 
	
	
	
	
Parte superior do formulário
	1.
	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:
	
	 a)
	As afirmativas I e III estão corretas.
	 b)
	As afirmativas I e IV estão corretas.
	 c)
	As afirmativas II e IV estão corretas.
	 d)
	Somente a afirmativa III está correta.
	2.
	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)
	As sentenças I e III estão corretas.
	 b)
	Somente a sentença IV está correta.
	 c)
	As sentenças III e IV estão corretas.
	 d)
	Somente a sentença II está correta.
	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 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 II e III estão corretas.
	 c)
	Somente a sentença I está correta.
	 d)
	As sentenças I e II estão corretas.
	4.
	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)
	A coesão, embora seja uma característica importante, não auxilia o encapsulamento de uma classe.
	 b)
	Tanto a coesão quanto o encapsulamento são obtidos na linguagem de programação Java através do modificador de acesso private.
	 c)
	Se uma classe tiver uma e somente uma responsabilidade, a probabilidade de esta sofrer manutenção diminui.
	 d)
	Uma classe coesa é, necessariamente, uma classe com alto acoplamento.
	5.
	Uma classe abstrai as características e os comportamentos em comum de um conjunto de objetos. Seus métodos definem quais os comportamentos possíveis dos objetos, enquanto os estados possíveis para determinado objeto são definidos pelos atributos. Considerando a declaração de atributos, feita de maneira similiar à declaração de uma variável no Java, analise as sentenças a seguir:
I- "salario", "dataDeNascimento" e "super" são exemplos de nomes válidos para atributos. 
II- A linguagem Java é fortemente tipada, ou seja, toda declaração deve incluir o seu tipo.
III- Além dos tipos primitivos, um atributo pode ser do tipo referência.
IV- Atributos que não podem ser modificados são do tipo primitivo "void". 
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 I está correta.
	 d)
	As sentenças II e III estão corretas.
	6.
	A maioria dos softwares necessitam de persistência de dados em algum tipo de repositório, sendo bancos de dados relacionais os mais utilizados. Neste contexto, a linguagem de programação Java possui uma API, chamada de JDBC, desenvolvida para permitir a conexão com o banco de dados, persistindo os dados de uma aplicação. Esta API suporta vários bancos de dados disponíveis no mercado, como o Oracle e o Mysql. Partindo desse pressuposto, classifique V para as sentenças verdadeiras e F para falsas:
(    ) Os bancos de dados relacionais são baseados na teoria dos conjuntos, por isso são totalmente compatíveis com o desenvolvimento de projetos orientados a objetos.
(    ) Um registro de uma tabela de um banco de dados é similar a uma classe da programação orientada a objetos.
(    ) A diferença de impedância é resolvida através de técnicas e ferramentas conhecidas por mapeamento do objeto relacional.
(    ) O padrão de projeto DAO é uma das soluções utilizadas para resolver o problema de mapeamento do objeto relacional.
Assinale a alternativa que apresenta a sequência CORRETA:
	 a)
	F - V - F - F.
	 b)
	V - V - V - F.
	 c)
	F - F - V - V.
	 d)
	V - F - V - F.
	7.
	Uma das funções do tratamento de exceções da linguagem de programação Java é informar ao desenvolvedor que determinado código fonte está tentando acessar um recurso fora da ?sandbox? fornecida pela Máquina Virtual Java. Recursos como rede, disco etc. são de controle do sistema operacional e existem tipos especiais de exceções para garantir que o código continue executando em caso de falhas no acesso a estes recursos. Com relação às características do tratamento de exceções na plataforma Java, classifique V para as sentenças verdadeiras e F para as falsas:
(    ) Essencialmente, uma exceção é causada por uma instrução que não consegue ser executada.
(    ) O tratamento de exceções deixa o código fonte mais performático e, por consequência, mais robusto.
(    ) Pode-se tratar exceções de forma local, através do bloco try catch ou delegar o tratamento, através da cláusula throws.
(    ) As exceções não verificadas são aquelas que lidam com problemas ao acessar recursos externos à JVM.
Agora, assinale a alternativa que apresenta a sequência CORRETA:
	 a)
	V - V - F - V.
	 b)
	F - V - F - F.
	 c)
	V - F - V - F.
	 d)
	V - F - F - V.
	8.
	Hotspot e Jit são as tecnologias que a Máquina Virtual Java (JVM) utiliza para aumentar o desempenho dos programas. Em máquinas virtuais modernas, certos trechos de código escritos em Java executam mais rápido do que códigos escritos em c. Com relação às estratégias de otimização adotadas pela JVM, analise as sentenças a seguir:
I- A tecnologia Jit permite a compilação dinâmica de um código em tempo de execução, fazendo com que um programa possa ser otimizado mesmo após sua instalação.
II- A tecnologia Jit atua sob total controle do desenvolvedor, que indica em seu código quais pontos devem ser otimizados.
III- A tecnologia HotSpot procura por pontos que são executados repetidamente em sua aplicação.
IV- O HotSpot atua diretamente nocódigo fonte da aplicação, não trabalhando sobre bytecode após compilação.
Agora, assinale a alternativa CORRETA:
	 a)
	Somente a sentença IV está correta.
	 b)
	As sentenças III e IV estão corretas.
	 c)
	As sentenças I e III estão corretas.
	 d)
	Somente a sentença II está correta.
	9.
	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:
	
	 a)
	As afirmativas II e IV estão corretas.
	 b)
	As afirmativas I e III estão corretas.
	 c)
	Somente a afirmativa IV está correta.
	 d)
	As afirmativas I e II estão corretas.
	10.
	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)
	As sentenças I e III estão corretas.
	 b)
	As sentenças II e III estão corretas.
	 c)
	Somente a sentença I está correta.
	 d)
	Somente a sentença II está correta.
Parte inferior do formulário

Continue navegando