A maior rede de estudos do Brasil

Grátis
19 pág.
Compilado de Provas de Programação Orientada A Objetos I   PROVA PRESENCIAL

Pré-visualização | Página 1 de 4

PROVA PRESENCIAL- ORIENTAÇÃO A OBJETO
Compilado - MUTIPLA ESCOLHA
P) A respeito dos conceitos de programação orientada a objetos e da linguagem de programação C#, assinale a opção correta:
Na linguagem C# é possível haver polimorfismo apenas por meio de implementação de herança entre classes.
Em uma hierarquia de classes na linguagem C#, uma subclasse sobrescreve qualquer método da sua superclasse desde que a palavra virtual esteja declarada no método da subclasse
Na linguagem C#, os métodos de uma classe que são declarados como virtual necessitam que sejam implementados na subclasse.
Na linguagem C# os métodos abstract de classe abstract não tem implementação definida. As subclasses dessa classe abstrata definem implementação para tais métodos
Na linguagem C#, métodos abstract de classe absctract precisam ser declarados com override nas subclasses quando tais métodos são implementados.
P) Sobre a declaração e uso de classes, métodos e atributos especificamente na linguagem de programação C#, é correto afirmar que:
Em uma mesma classe pode-se declarar dois métodos que apresentam o mesmo nome.
EM um método de uma classe filha, a clausula this é utilizada para acessar um atributo da classe mãe.
Uma classe filha não pode sobrepor um método ou atributo da classe mãe se na classe mãe eles estiverem com o atributo protected.
Uma classe abstrata pode ser implementada por uma classe concreta através da instrução implements.
Uma interface pode ter atributos que podem ser utilizados nas classes herdeiras. 
P) Analise as afirmativas a seguir: 
I – Mensagem é uma chamada a um objeto para invocar um de seus métodos, ativando um comportamento por sua classe. Também pode ser direcionada diretamente a uma classe (atráves de uma invocação .... Estático)
II – Herança é o mecanismo pelo qual uma classe pode estender outra classe, aproveitando seus comportamentos (métodos) e variáveis possíveis (atributos).
III – Associação é o mecanismo pelo qual um objeto utiliza os recursos de outros. Elas podem ter a forma “um-para-um”, quando um objeto troca mensagens com outro, ou “um-para-muitos”, quando um objeto troca mensagens com uma coleção de outros objetos
Sobre as afirmativas apresentadas, assinale a alternativa correta:
Somente as afirmativas I e II estão corretas
Somente as afirmativas I e III estão corretas
Somente as afirmativas II e III estão corretas
Somente a afirmativa III está correta
As afirmativas I, II e III estão corretas.
P) Um objeto pode ser definido como:
Uma instancia de uma classe
Uma característica de uma coisa do mundo real.
Uma função
Uma característica ou comportamento de uma classe
Um trecho do código utilizado apenas em tempo de desenvolvimento.
P) Relacione as palavras-chave da linguagem C# à sua respectiva descrição.
Palavra-chave:
I – this
II – base
III – throw
Descrição
( P ) Usado para gerar um exceção
( Q ) Em um método construtor, refere-se a superclasse
A relação correta é:
III – Q, I – P
I – P, III – Q
I – Q, II – P
II – P, III – Q
II – Q, III – P
P) A descrição abaixo refere-se a qual das técnicas apresentadas pelo paradigma de Programação Orientada a Objetos 
“É uma forma de reutilização de software na qual uma nova classe é criada, observando membros de uma classe existente e aprimorada com capacidades novas ou mesmo modificadas de acordo com a necessidade da classe atual”
Polimorfismo
Reutilização de classes
Hereditariedade
Herança
Instanciação
P) Heranças podem ser definidas como:
Ações de uma classe executadas em outra classe.
A possibilidade do uso de uma classe em outra previamente existente reutilizando seus métodos e atributos.
Característica de operações de um objeto herdadas de uma classe.
Ações executadas por uma classe, sempre utilizadas em tempo de execução.
A reutilização de todos os métodos de um objeto instanciado a partir de uma classe encapsulada e polimórfica. 
P) Entre as principais vantagens da Programação Orientada a Objetos, podemos citar:
Permite aos programadores introduzir programas diretamente na memória do computador.
Torna o código da linguagem binaria mais acessível
Torna o projeto mais barato
Torna o sistema mais eficiente no uso de memoria
Tem uma alta usabilidade. 
P) Um atributo serve para:
Indicar as possíveis informações armazenadas por um objeto de uma classe, representando o estado de cada objeto.
Definir o tipo de classe
Procedimentos que formam os comportamentos e serviços oferecidos por objetos de uma classe.
Descrever um objeto.
Comportamentos de uma classe
P) Considere as afirmativas a seguir:
I – A classe Object pode ser herdeira de qualquer outra classe podendo receber serviços das classes pais. Ela suporta todas as classes na hierarquia de classes recebendo serviços de baixo nível como herança.
II – A classe Object é classe base fundamental de todas as classes, ela é a raiz da hierarquia de tipos.
III – Qualquer método da classe Object pode ser sobrescrito nas subclasses utilizando o modificador virtual.
Podemos afirmar que:
Apenas a afirmativa I está correta.
Apenas a afirmativa II está correta.
Apenas a afirmativa III está correta.
As afirmativas I e II estão corretas.
As afirmativas I e III estão corretas
P) Os erros gerados durante a execução de um programa implementado na linguagem C# devem ser controlados com uma estrutura, que pode combinar o uso de qual dos seguintes blocos de tratamento de exceção, apresentados a seguir:
No mínimo com try e finally
No mínimo com try e catch ou try e finally
Obrigatoriamente try, catch e finally
No mínimo com try e catch, ou try e finally ou try, cath e finally
No mínimo com try e catch
P) Entre as frases abaixo, coloque a letra “O” para vantagem dos Programas Orientados a Objetos e a letra “E” para as vantagens dos Programas Estruturados: 
( E ) Em termos de velocidade de processamento tem um desempenho superior.
( E ) O aprendizado do paradigma bem mais fácil no início. 
( O ) Uma distribuição de código um pouco mais lógica, funcional e melhor encapsulada, tornando a manutenção e a extensão do código mais fácil e com menos riscos de inserção de erros.
( O ) É mais fácil gerenciar o desenvolvimento deste tipo de software em grandes equipes, partindo de uma especificação UML antes de iniciar o desenvolvimento do software em si.
( E ) Sem a necessidade de ter uma base conceitual bem formado, bastante saber poucos comandos e para fazer um programa simples. 
E – E – O – O – E
O – O – O – O – O
E – E – E – O – E
O – E – O – O – E 
E – O – E – E – O
P) Dadas as declarações abaixo:
1) int[] a = new int[5];
2) float b = new float[3];
3) char[] c = new char [] {‘a’, ‘b’, ‘c’, ‘d’, ‘e’};
4) double d = double[];
5) String e[4];
Quais criarão um vetor?
1 e 3
2 e 4
3 e 5
1 e 2
2 e 3
P) Leia a definição a seguir:
“É o princípio pelo qual duas ou mais classes derivadas de uma mesma superclasse podem invocar métodos que tem a mesma identificação, mas comportamentos distintos, especializados para cada classe, derivada, usando para tanto uma referência a um objeto do tipo da superclasse”
Qual o conceito definido no trecho acima?
Construtor
Herança
Polimorfismo
Encapsulamento
Abstração
P) Dos conjuntos de ferramentas fornecidos pelo C# qual não é utilizado para a programação de laços?
for
foreach
while
do while
switch case
P) Segundo a Microsoft quais os pilares da programação orientada a objetos?
Polimorfismo, herança, associação
Abstração, herança, encapsulamento
Herança, polimorfismo, encapsulamento
Herança, abstração, instanciação
Classe, atributo e método. 
P) Leia as definições de laços a seguir:
I – Possui três componentes para controle de suas interações (voltas de laço) sendo que o primeiro comportamento refere-se à declaração da variável de controle do laço. O segundo componente é uma expressão lógica que tem condição de encerramento a cada interação e o terceiro componente é o controle do laço que determinará o passo de cada