Buscar

Quiz programação orientada a objetos

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

Prévia do material em texto

· Pergunta 1
1 em 1 pontos
	
	
	
	Considere a declaração das interfaces abaixo escritas em Java:
interface Autenticacao {
    boolean valida(String valor);
}
interface DataValida {
    String valida(LocalDate valor);
}
Em um determinado momento do programa foi criado um formulário que precisa estar autenticado para cadastrar datas de entrega no sistema. A implementação da classe Formulario fica:
class Formulario implements Autenticacao, DataValida {
    // Código da classe
}
Observando o cenário descrito podemos afirmar que:
	
	
	
	
		Resposta Selecionada:
	a. 
no corpo da classe Formulario, o método valida deverá ser definido pelo menos duas vezes, sendo que uma definição corresponderá à assinatura prevista na declaração da interface Autenticacao e a outra definição corresponderá à assinatura prevista na declaração da interface DataValida;
	Respostas:
	a. 
no corpo da classe Formulario, o método valida deverá ser definido pelo menos duas vezes, sendo que uma definição corresponderá à assinatura prevista na declaração da interface Autenticacao e a outra definição corresponderá à assinatura prevista na declaração da interface DataValida;
	
	b. 
no corpo da classe Formulario, o método valida deverá ser definido apenas uma vez e a assinatura será uma escolha do programador, podendo ser a prevista na declaração da interface Autenticacao ou a prevista na declaração da interface DataValida;
	
	c. 
no corpo da classe Formulario, o método valida deverá ser definido apenas uma vez, com a assinatura prevista na declaração da interface Autenticacao, mencionada em primeiro lugar na cláusula implements da declaração da classe Formulario;
	
	d. 
no corpo da classe Formulario, o método valida deverá ser definido apenas uma vez, com a assinatura prevista na declaração da interface DataValida, mencionada em último lugar na cláusula implements da declaração da classe Formulario;
	
	e. 
haverá um erro em tempo de compilação, assinalando ao programador a impossibilidade de a classe Formulario implementar simultaneamente as duas interfaces.
	Comentário da resposta:
	Uma classe que implementa uma interface precisa implementar todos os métodos. Sendo assim é possível implementar métodos com o mesmo nome, mas diferente da assinatura, isso chama-se sobrecarga de método.
	
	
	
· Pergunta 2
1 em 1 pontos
	
	
	
	A forma mais segura e adequada de manipular variáveis na programação orientada a objetos é utilizando os métodos de acesso e os métodos modificadores.
Quais comandos demonstram esses métodos, respectivamente?
	
	
	
	
		Resposta Selecionada:
	a. 
Get e set.
	Respostas:
	a. 
Get e set.
	
	b. 
Construtor e main.
	
	c. 
Set e get.
	
	d. 
Main e get.
	
	e. 
Construtor e set.
	Comentário da resposta:
	Os métodos de acesso são também conhecidos como get e os métodos modificadores são também conhecidos como set.
	
	
	
· Pergunta 3
1 em 1 pontos
	
	
	
	Uma interface, no contexto de desenvolvimento de sistemas orientados a objetos, pode ser interpretada como um dispositivo de fronteira, pois define a maneira de comunicação entre duas entidades e a abstração de fronteira pode ser entendida como uma forma de interação da entidade com o mundo exterior. De acordo com a linguagem Java, analise as afirmativas a respeito de interfaces.
I.    As interfaces são classes abstratas, completamente não implementadas.
II.    A classe que implementa uma interface precisa fornecer uma implementação para todos os métodos na interface.
III.    Para que uma determinada classe seja vista como uma implementação de uma interface na linguagem Java, faz-se necessário indicar na declaração da classe a palavra reservada Extends.
IV.    Uma classe pode implementar apenas uma interface para evitar a herança múltipla, pois é de difícil implementação na linguagem Java.
	
	
	
	
		Resposta Selecionada:
	c. 
I e II.
	Respostas:
	a. 
I e IV.
	
	b. 
II e III
	
	c. 
I e II.
	
	d. 
II e IV.
	
	e. 
I e III.
	Comentário da resposta:
	Toda vez que uma classe implementa uma interface, é necessário preencher as informações lógicas dos métodos, sendo assim todos os métodos de uma interface devem ser implementados.
	
	
	
· Pergunta 4
1 em 1 pontos
	
	
	
	Podemos definir uma hierarquia de classes através do uso de herança. Ela permite que uma classe abaixo receba os atributos e métodos da classe diretamente acima dela. Esse é um relacionamento que nos permite estender as capacidades de uma classe, reaproveitando o código da superclasse. Diferente de um relacionamento do tipo de composição. Sendo assim, é correto afirmar que um relacionamento de herança entre A (superclasse)  e B (subclasse) é descrito da seguinte maneira:
	
	
	
	
		Resposta Selecionada:
	c. 
B é um objeto de A.
	Respostas:
	a. 
A é um objeto de B.
	
	b. 
A tem um objeto de B.
	
	c. 
B é um objeto de A.
	
	d. 
B tem um objeto de A.
	
	e. 
A e B são independentes.
	Comentário da resposta:
	Sendo B uma extensão de A, é correto afirmar que o objeto B é um objeto de A.
	
	
	
· Pergunta 5
1 em 1 pontos
	
	
	
	Analise o código da classe abaixo:
public class A{
private int a;
private String b;
private boolean c;
public void setB(String b){
this.b = b;
}
public void setC(boolean c){
this.c = c;
}
public void setA(int a){
this.a = a;
}
public int getA(){
return this.a;
}
public String getB(){
return this.b;
}
public boolean getC(){
return this.c;
}
}
O que será impresso na tela, depois de rodarmos o seguinte código do método main?
A a = new A();
a.setA(1);
system.out.println(a.getA() + “\n” + a.getB() + “\n” + a.getC());
	
	
	
	
		Resposta Selecionada:
	d. 
1
Null
false
	Respostas:
	a. 
0
0
0
	
	b. 
1
0
0
	
	c. 
1
Null
true
	
	d. 
1
Null
false
	
	e. 
0
Null
false
	Comentário da resposta:
	O construtor inicializou as variáveis de instância do objeto a com os valores zero para a, null para b e false para c. Em seguida inserimos o valor 1 em a e imprimimos os valores das variáveis a, b e c na ordem (pulando uma linha).
	
	
	
· Pergunta 6
1 em 1 pontos
	
	
	
	Analise a sobrecarga dos métodos abaixo:
public void A (float a, int b){}
public void A (String a, int b){}
public void A (float a, String b){}
Escolha a opção correta se precisarmos chamar o método A e passar o nome de um aluno e sua média (considere o nome do objeto Aluno).
	
	
	
	
		Resposta Selecionada:
	b. 
Aluno.A(7.3, “João”);
	Respostas:
	a. 
Aluno.A(“João”, 7.3);
	
	b. 
Aluno.A(7.3, “João”);
	
	c. 
Aluno(7.3, “João”);
	
	d. 
Aluno.A(João, 7);
	
	e. 
Aluno(“João”, 7);
	Comentário da resposta:
	A chamada ao método está correta e a passagem de parâmetros está na ordem certa, além de obedecer às regras corretamente, como passar um nome entre aspas e um número decimal com ponto (.)
	
	
	
· Pergunta 7
1 em 1 pontos
	
	
	
	A interface serve como um contrato para que uma classe possua determinados recursos. Garantindo assim que os recursos estejam disponíveis para qualquer classe que se associar à interface. Para que ocorra esse relacionamento, existem algumas regras ao criar uma interface. O que pode ser declarado em uma interface?
	
	
	
	
		Resposta Selecionada:
	e. 
Constantes e métodos abstratos.
	Respostas:
	a. 
Métodos finals.
	
	b. 
Apenas atributos.
	
	c. 
Métodos privados e atributos privados.
	
	d. 
Métodos e atributos estáticos.
	
	e. 
Constantes e métodos abstratos.
	Comentário da resposta:
	Interfaces são contratos para garantir que métodos serão implementados por uma determinada classe. Portanto, funcionam como classes abstratas.
	
	
	
· Pergunta 8
0 em 1 pontos
	
	
	
	Uma das formas que podemos criar relacionamento entre classes é através da herança. Dependendo do processo realizado para construir esse relacionamento de classes dizemos que é uma generalização ou uma especialização dessas classes. Isso auxilia no reaproveitamento de código de uma superclasse para uma subclasse. Tendo isso em mente, como podem ser definidas as superclasses e as subclasses, respectivamente?
	
	
	
	
		Resposta Selecionada:
	d. 
Superclasses sãomenos genéricas e as subclasses mais especializadas.
	Respostas:
	a. 
Superclasses são abstratas e as subclasses são concretas.
	
	b. 
Superclasses são comuns e as subclasses são raras.
	
	c. 
Superclasses são mais utilizadas e as subclasses menos utilizadas.
	
	d. 
Superclasses são menos genéricas e as subclasses mais especializadas.
	
	e. 
Superclasses são genéricas e as subclasses são especializadas.
	Comentário da resposta:
	Como existe a hierarquia na estrutura de herança, as superclasses contêm as informações mais comuns, portanto é uma classe mais genérica. Com as informações específicas, as subclasses são chamadas de classes especializadas por se tratar de uma aplicação mais direcionada do objeto.
	
	
	
· Pergunta 9
0 em 1 pontos
	
	
	
	Os métodos construtores são chamados no momento da inicialização de um objeto e possuem algumas características.
Indique a alternativa correta sobre as características de um método construtor.
	
	
	
	
		Resposta Selecionada:
	b. 
O nome pode ser qualquer um, mas devem ser chamados com o comando new.
	Respostas:
	a. 
Devem ter o mesmo nome da sua classe, porém não possuem parâmetros.
	
	b. 
O nome pode ser qualquer um, mas devem ser chamados com o comando new.
	
	c. 
Possuem o mesmo nome de sua classe e podem ter parâmetros.
	
	d. 
São chamados pela instrução new, mas devem ser encapsulados com o modificador de acesso private.
	
	e. 
O método construtor não é obrigatório na instância e inicialização de um objeto.
	Comentário da resposta:
	O método construtor tem como principal característica possuir o mesmo nome de sua classe. Podem ter parâmetros como qualquer método.
	
	
	
· Pergunta 10
1 em 1 pontos
	
	
	
	Qual o trecho de código que utiliza o recurso chamado generics da forma correta, ao criar uma lista de objetos da classe Discente?
	
	
	
	
		Resposta Selecionada:
	c. 
List<Discente>lstDiscente = new ArrayList<>().
	Respostas:
	a. 
List<Discente>IstDiscente = new ArrayList().
	
	b. 
List<> lstDiscente = new ArrayList<>().
	
	c. 
List<Discente>lstDiscente = new ArrayList<>().
	
	d. 
List lstDiscente = new ArrayList<Discente>().
	Comentário da resposta:
	O parâmetro de tipo deve ser informado na declaração da interface List e a instância do ArrayList precisa informar que ele é Generics também.
	
	
	
Segunda-feira, 7 de Março de 2022 11h40min47s BRT

Continue navegando