Buscar

Questionario + Tele aula IV POO

Prévia do material em texto

 Pergunta 1 
0,25 em 0,25 pontos 
 
 
 
 
Resposta 
Selecionada: 
a. 
 A classe Program depende da classe Console. 
 
Respostas: a. 
 A classe Program depende da classe Console. 
 
 
 
b. 
 A classe Program se associa à classe Console. 
 
 
 
c. 
 Existe um relacionamento de generalização entre as classes Program e 
Console. 
 
 
 
d. 
 A classe Program representa o todo e a classe Console representa a 
parte em um relacionamento de agregação. 
 
 
 
e. 
 Não é possível saber qual a relação entre as duas classes sem ter 
acesso ao código fonte da classe Console. 
 
 
 
Feedback da 
resposta: 
 Alternativa: A 
Comentário: quando uma classe utiliza outra, a primeira depende da 
segunda. 
 
 Pergunta 2 
0,25 em 0,25 pontos 
 
 
 
 
Resposta Selecionada: d. 
 Ocorreu uma divisão por zero. 
 
Respostas: a. 
 Erro de cast inválido. 
 
 
b. 
Erro de conversão de tipos. 
 
 
c. 
Erro de referência nula. 
 
 
 
 
d. 
 Ocorreu uma divisão por zero. 
 
 
e. 
O programa não roda, pois apresenta erros. 
 
 
 
Feedback 
da resposta: 
Alternativa: D 
Comentário: o código consegue converter o string “0” mesmo estando 
armazenado em uma variável do tipo Object em um inteiro 0. A seguir divide 
10 por 0, o que causa uma exceção de divisão por zero dentro do bloco try. 
Assim, a exceção é tratada pelo bloco catch que imprime a mensagem da 
alternativa no console. 
 
 Pergunta 3 
0,25 em 0,25 pontos 
 
 
 
 
Resposta Selecionada: a. 
 Erro de cast inválido. 
 
Respostas: a. 
 Erro de cast inválido. 
 
 
b. 
Erro de conversão de tipos. 
 
 
 
c. 
 Erro de referência nula. 
 
 
d. 
Ocorreu uma divisão por zero. 
 
 
 
e. 
O programa não roda, pois apresenta erros. 
 
 
Feedback 
da 
resposta: 
 Alternativa: A 
Comentário: o string “0” é armazenado na variável texto do tipo Object. 
Na linha seguinte, o código tenta fazer um cast da variável texto para int. 
Como a variável texto é do tipo Object e pode armazenar qualquer tipo de 
variável (inclusive int), o programa não apresenta erros de sintaxe e pode 
ser compilado. Entretanto, em execução, o cast não pode ser feito de um 
string para int, por isso ocorre uma exceção de cast inválido. 
 
 Pergunta 4 
0,25 em 0,25 pontos 
 
 
A classe Object não é: 
 
 
Resposta 
Selecionada: 
c. 
Uma classe onde é declarado o método Main(). 
 
Respostas: a. 
 Uma classe da qual todas as classes herdam. 
 
 
b. 
Uma classe que declara métodos úteis para todas as outras 
classes. 
 
 
c. 
Uma classe onde é declarado o método Main(). 
 
 
 
d. 
 Uma classe da qual podem ser criadas variáveis que podem 
armazenar objetos de qualquer classe. 
 
 
e. 
Onde os métodos ToString() e Equals() são declarados. 
 
 
 
Feedback da 
resposta: 
Alternativa: C 
 
Comentário: o método Main() deve ser declarado em alguma classe 
criada pelo programador. A classe Object é parte do Framework .NET 
e não pode ser declarada novamente ou modificada. 
 
 Pergunta 5 
0,25 em 0,25 pontos 
 
 
O que é uma interface? 
 
 
Resposta 
Selecionada: 
c. 
 Ela pode ser entendida como uma classe abstrata sem atributos e 
que defina apenas métodos abstratos. 
 
Respostas: a. 
 É o mecanismo de comunicação do programa com o usuário. A 
interface pode ser por linha de texto (console) ou ser uma interface 
gráfica. 
 
 
 
b. 
 É uma classe concreta que sobrescreve todos os métodos 
abstratos de sua superclasse. 
 
 
 
c. 
 Ela pode ser entendida como uma classe abstrata sem atributos e 
que defina apenas métodos abstratos. 
 
 
 
d. 
 Ela pode ser entendida como uma classe abstrata sem atributos e 
que defina apenas métodos concretos. 
 
 
 
e. 
 Ela define assinaturas de métodos com ou sem implementação. 
 
 
 
 
 
 
Feedback 
da resposta: 
Alternativa: C 
Comentário: uma interface é um conjunto de declarações de métodos, 
nenhum com implementação, que define um padrão para a declaração 
de classes. Ela se assemelha a uma classe abstrata que define apenas 
métodos abstratos. Em C#, interfaces não podem declarar atributos. 
 
 Pergunta 6 
0,25 em 0,25 pontos 
 
 
Se uma classe especializa (herda de) uma classe abstrata: 
 
 
Resposta 
Selecionada: 
d. 
Ela será concreta se sobrescrever todos os métodos abstratos da 
superclasse. 
 
Respostas: a. 
 Ela será sempre abstrata. 
 
 
b. 
Ela sempre será concreta. 
 
 
c. 
Ela será abstrata se sobrescrever todos os métodos abstratos da 
superclasse. 
 
 
d. 
Ela será concreta se sobrescrever todos os métodos abstratos da 
superclasse. 
 
 
e. 
Ela será concreta se sobrescrever ao menos um método abstrato 
da superclasse. 
 
 
 
Feedback da 
resposta: 
Alternativa: D 
Comentário: uma classe que especialize uma superclasse abstrata só 
será concreta se sobrescrever todos os métodos abstratos herdados 
da superclasse. 
 
 
 Pergunta 7 
0,25 em 0,25 pontos 
 
 Sobre classes abstratas, assinale a alternativa correta. 
 
 
 
Resposta 
Selecionada: 
c. 
Uma classe abstrata pode declarar métodos concretos e 
abstratos. 
 
Respostas: a. 
 Uma classe abstrata só pode herdar de outra classe abstrata. 
 
 
 
b. 
 Uma classe abstrata pode ser instanciada em um objeto como 
uma classe concreta. 
 
 
c. 
Uma classe abstrata pode declarar métodos concretos e 
abstratos. 
 
 
d. 
Uma classe abstrata não pode declarar atributos. 
 
 
e. 
Uma classe abstrata não pode ser uma especialização de uma 
classe concreta. 
 
 
 
Feedback da 
resposta: 
Alternativa: C 
Comentário: uma classe abstrata deve declarar ao menos um método 
abstrato e pode declarar qualquer quantidade de métodos concretos. 
 
 
 
 
 
 Pergunta 8 
0,25 em 0,25 pontos 
 
 
Sobre o mecanismo de tratamento de exceções, podemos dizer: 
 
 
Resposta 
Selecionada: 
e. 
Pode tornar o programa mais tolerante a falhas. 
 
 
Respostas: a. 
 
É um mecanismo que ajuda a reduzir a quantidade de erros de 
sintaxe de um programa. 
 
 
 
b. 
 É um mecanismo que melhora a usabilidade de um programa. 
 
 
c. 
Não consegue evitar a ocorrência de erros de tempo de 
execução. 
 
 
d. 
Melhora o desempenho de um programa. 
 
 
e. 
Pode tornar o programa mais tolerante a falhas. 
 
 
 
Feedback da 
resposta: 
Alternativa: E 
Comentário: o uso correto do tratamento de exceções pode fazer com 
que um programa consiga se recuperar de situações anômalas que, 
normalmente, fariam o programa ser interrompido com uma mensagem 
de erro. 
 
 Pergunta 9 
0,25 em 0,25 pontos 
 
 
Sobre o tratamento de exceções, podemos dizer: 
 
 
Resposta 
Selecionada: 
a. 
 Com um bloco try, podemos tratar várias exceções, cada uma 
tratada em um bloco catch. 
 
Respostas: a. 
 Com um bloco try, podemos tratar várias exceções, cada uma 
tratada em um bloco catch. 
 
 
 
b. 
 Para cada bloco catch, devemos ter um bloco try. 
 
 
 
 
c. 
 Para cada bloco try, só podemos ter um bloco catch. 
 
 
 
d. 
 Podemos usar o bloco try sem usar nenhum bloco catch. 
 
 
 
e. 
 Podemos usar o bloco catch sem usar nenhum bloco try. 
 
 
 
 
 
Feedbackda resposta: 
Alternativa: A 
Comentário: no bloco try, escrevemos o código que pode gerar uma 
exceção. Caso possam ocorrer mais de um tipo de exceção, elas 
podem ser tratadas separadamente, cada uma em seu bloco catch. 
Para cada bloco try deve haver ao menos um bloco catch. 
 
 
 Pergunta 10 
0,25 em 0,25 pontos 
 
 
Uma classe não pode: 
 
 
Resposta Selecionada: a. 
 Herdar de uma classe abstrata e uma classe concreta. 
 
Respostas: a. 
 Herdar de uma classe abstrata e uma classe concreta. 
 
 
 
b. 
 Herdar de uma classe abstrata. 
 
 
 
c. 
Realizar uma interface. 
 
 
 
d. 
 Herdar de uma classe e realizar duas interfaces. 
 
 
 
e. 
 Herdar de uma classe concreta e realizar uma interface. 
 
 
 
 
 
Feedback da 
resposta: 
Alternativa: A 
Comentário: uma classe só pode herdar de uma classe, mas pode 
realizar quantas interfaces forem desejadas. 
 
 
Pergunta 1 
0 em 0 pontos 
 
 
Qual das alternativas abaixo não é uma característica do tratamento de exceções? 
 
 
Resposta 
Selecionada: 
e. 
O tratamento de todas as exceções pode tornar a manutenção do 
programa mais difícil. 
 
 
 
 
Respostas: a. 
O tratamento de exceções aumenta a estabilidade do sistema. 
 
 
 
b. 
O tratamento de exceções deve ser feito sempre que há a 
possibilidade de ocorrência de um problema com a execução do 
programa. 
 
 
 
c. 
O tratamento de uma exceção deve sempre permitir que o 
programa se recupere do problema que causou a exceção. 
 
 
 
 
d. 
Um programa que é interrompido por uma exceção não tratada é 
um programa de baixa qualidade. 
 
e. 
O tratamento de todas as exceções pode tornar a manutenção do 
programa mais difícil. 
 
 
 
 
 
Feedback da resposta: Resposta: E. 
 
 
 Pergunta 2 
0 em 0 pontos 
 
 
Sobre a especialização de classes e a realização de interfaces, assinale a alternativa 
incorreta. 
 
 
Resposta 
Selecionada: 
b. 
Interfaces só podem declarar atributos estáticos e constantes. 
 
Respostas: a. 
Classes abstratas podem declarar atributos estáticos e não 
estáticos. 
 
 
 
b. 
Interfaces só podem declarar atributos estáticos e constantes. 
 
 
 
c. 
Ao se sobrescrever um método abstrato, deve-se usar a palavra-
chave “override”. 
 
 
 
d. 
Ao se implementar um método definido em uma interface não é 
necessário utilizar nenhuma palavra-chave. 
 
 
 
e. 
Uma classe abstrata não precisa implementar métodos abstratos 
de uma classe pai. 
 
 
 
 
 
 
Feedback da resposta: Resposta: B. 
 
 
 
 
 
 Pergunta 3 
0 em 0 pontos 
 
 
Sobre a especialização de classes e a realização de interfaces, assinale a alternativa 
incorreta. 
 
 
Resposta 
Selecionada: 
e. 
Uma classe pode especializar uma classe concreta e uma classe 
abstrata. 
 
 
 
 
Respostas: a. 
Uma classe pode especializar uma classe concreta ou uma 
classe abstrata. 
 
 
 
b. 
Uma classe pode especializar uma classe concreta e realizar 
uma interface. 
 
 
 
c. 
Uma classe pode especializar uma classe abstrata e realizar três 
interfaces. 
 
 
 
d. 
Uma classe pode realizar qualquer número de interfaces. 
 
 
 
e. 
Uma classe pode especializar uma classe concreta e uma classe 
abstrata. 
 
 
 
 
 
Feedback da resposta: Resposta: E. 
 
 
 
 
 
 
 Pergunta 4 
0 em 0 pontos 
 
 
Uma classe concreta (não abstrata) pode especializar uma classe abstrata ou uma 
classe concreta. Com isto em mente, assinale a alternativa correta. 
 
 
Resposta 
Selecionada: 
b. 
Se a classe pai define um método abstrato, a classe filha deverá 
implementar este método ou também será uma classe abstrata. 
 
Respostas: a. 
Se a classe pai for abstrata, a classe filha também será. 
 
 
 
b. 
Se a classe pai define um método abstrato, a classe filha deverá 
implementar este método ou também será uma classe abstrata. 
 
 
 
c. 
Uma classe abstrata só pode declarar métodos abstratos. 
 
 
 
d. 
Se uma classe herda um método abstrato, ela não pode 
sobrescrever este método. 
 
 
 
e. 
Uma classe abstrata não pode ser subclasse de uma classe 
concreta. 
Feedback da resposta: Resposta: B.

Continue navegando