Logo Passei Direto
Buscar

Atividade 2 Programação Orientada a Objetos

Ferramentas de estudo

Questões resolvidas

Sabemos que, após criadas nossas classes, precisamos elaborar uma relação na qual os objetos de classes diferentes consigam se comunicar. Essa comunicação é chamada de relação lógica e pode ser do tipo associação, composição e agregação. Sobre esse tema, analise as afirmações abaixo:
De acordo com as afirmações apresentadas, assinale a alternativa correta.
I. Associação significa criar uma conexão entre classes, fazendo com que seus objetos tenham uma relação.
II. A associação é realizada, após ambos os atributos forem inicializados.
III. Agregação é utilizada quando uma classe precisa utilizar atributos de outra classe.
IV. Composição é uma variação da relação agregação, sua única diferença se dá pelo fato de que a classe responsável por criar as outras classes for destruída, as outras classes serão inutilizáveis.
a. I, II e III.
b. II, III e IV.
c. I e III.
d. I, II e IV.

O Java possui uma API que possibilita agrupar um conjunto de objetos. Dessa forma, por intermédio de suas interfaces, podemos realizar algumas operações básicas nos objetos contidos nessa coleção. Estamos falando sobre a API Collections, um conjunto bem modelado de interfaces e classes, que representam um grupo de objetos de uma mesma unidade. Ou seja, utilizando coleções, temos acessos a essas interfaces (List, Queue, Map, Set) que possuem em sua implementação, métodos com operações básicas. Operações estas que podem ser de inserção, remoção, ordenação e outros.
Sobre a API Collections, marque a alternativa correta.
a. Na interface List, não podemos inserir elementos duplicados.
b. Na interface Set, a ordem de inserção é garantida.
c. Na interface Queue, podemos inserir elementos duplicados.
d. Na interface Map, as chaves podem ser duplicadas.

Quando falamos sobre encapsulamento, podemos achar que encapsular significa apenas ocultar determinadas informações de implementação. Apesar de ocultar, ser um conceito realizado pelo encapsulamento, não significa que ocultaremos informações de uma classe para o restante do código. Na verdade, quando encapsulamos, estamos restringindo o acesso apenas a alguns atributos e métodos de uma classe/objeto para as outras classes/objetos. Porém, ainda conseguimos acesso a essas informações ocultas pelos métodos de leitura e escrita.
Sobre encapsulamento, escolha a alternativa correta.
a. O atributo pode ser declarado como public, pois a visibilidade dele é controlada pelos métodos.
b. O atributo deverá ser declarado sempre como privado, pois a visibilidade dele é controlada pelos métodos.
c. O atributo pode ser declarado como protected, pois a visibilidade dele é controlada pelos métodos.
d. O atributo deve ser declarado como default, pois a visibilidade dele é controlada pelos métodos.

Sabemos que o paradigma de orientação a objeto nos ajuda a programar de maneira organizada e resolve vários problemas enfrentados pela programação estruturada. Para programar de maneira orientada a objeto, fazemos o uso de alguns conceitos. Por exemplo, classe, objetos, atributos e métodos.
Qual das alternativas abaixo é verdadeira?
a. É possível acessar o atributo saldo na função main, pois esse atributo é privado.
b. Não é possível acessar apenas o atributo saldo na função main, pois esse atributo é privado.
c. Não é possível acessar o atributo saldo e nomeCliente na função main, pois esses atributos são privados.
d. É possível acessar o atributo nomeCliente na função main, pois esse atributo é privado.

Uma das características existente na programação orientada a objetos está relacionada com atribuições específicas quando formos declarar nossas variáveis. Podemos por exemplo, proteger um atributo interno do objeto contra modificações diretas. Sabemos que essas alterações devem ocorrer por meio de métodos adequados, criados para acesso e modificação desses atributos.
Quando decidimos colocar o modificar de acesso privado em um atributo, significa que:
a. este atributo privado é acessível a todas as classes.
b. este atributo privado é acessível apenas a classes do mesmo pacote.
c. este atributo privado é acessível a classes que herdam essa classe.
d. este atributo privado somente é acessível aos objetos que fazem referência a esta classe.

Material
páginas com resultados encontrados.
páginas com resultados encontrados.
details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Questões resolvidas

Sabemos que, após criadas nossas classes, precisamos elaborar uma relação na qual os objetos de classes diferentes consigam se comunicar. Essa comunicação é chamada de relação lógica e pode ser do tipo associação, composição e agregação. Sobre esse tema, analise as afirmações abaixo:
De acordo com as afirmações apresentadas, assinale a alternativa correta.
I. Associação significa criar uma conexão entre classes, fazendo com que seus objetos tenham uma relação.
II. A associação é realizada, após ambos os atributos forem inicializados.
III. Agregação é utilizada quando uma classe precisa utilizar atributos de outra classe.
IV. Composição é uma variação da relação agregação, sua única diferença se dá pelo fato de que a classe responsável por criar as outras classes for destruída, as outras classes serão inutilizáveis.
a. I, II e III.
b. II, III e IV.
c. I e III.
d. I, II e IV.

O Java possui uma API que possibilita agrupar um conjunto de objetos. Dessa forma, por intermédio de suas interfaces, podemos realizar algumas operações básicas nos objetos contidos nessa coleção. Estamos falando sobre a API Collections, um conjunto bem modelado de interfaces e classes, que representam um grupo de objetos de uma mesma unidade. Ou seja, utilizando coleções, temos acessos a essas interfaces (List, Queue, Map, Set) que possuem em sua implementação, métodos com operações básicas. Operações estas que podem ser de inserção, remoção, ordenação e outros.
Sobre a API Collections, marque a alternativa correta.
a. Na interface List, não podemos inserir elementos duplicados.
b. Na interface Set, a ordem de inserção é garantida.
c. Na interface Queue, podemos inserir elementos duplicados.
d. Na interface Map, as chaves podem ser duplicadas.

Quando falamos sobre encapsulamento, podemos achar que encapsular significa apenas ocultar determinadas informações de implementação. Apesar de ocultar, ser um conceito realizado pelo encapsulamento, não significa que ocultaremos informações de uma classe para o restante do código. Na verdade, quando encapsulamos, estamos restringindo o acesso apenas a alguns atributos e métodos de uma classe/objeto para as outras classes/objetos. Porém, ainda conseguimos acesso a essas informações ocultas pelos métodos de leitura e escrita.
Sobre encapsulamento, escolha a alternativa correta.
a. O atributo pode ser declarado como public, pois a visibilidade dele é controlada pelos métodos.
b. O atributo deverá ser declarado sempre como privado, pois a visibilidade dele é controlada pelos métodos.
c. O atributo pode ser declarado como protected, pois a visibilidade dele é controlada pelos métodos.
d. O atributo deve ser declarado como default, pois a visibilidade dele é controlada pelos métodos.

Sabemos que o paradigma de orientação a objeto nos ajuda a programar de maneira organizada e resolve vários problemas enfrentados pela programação estruturada. Para programar de maneira orientada a objeto, fazemos o uso de alguns conceitos. Por exemplo, classe, objetos, atributos e métodos.
Qual das alternativas abaixo é verdadeira?
a. É possível acessar o atributo saldo na função main, pois esse atributo é privado.
b. Não é possível acessar apenas o atributo saldo na função main, pois esse atributo é privado.
c. Não é possível acessar o atributo saldo e nomeCliente na função main, pois esses atributos são privados.
d. É possível acessar o atributo nomeCliente na função main, pois esse atributo é privado.

Uma das características existente na programação orientada a objetos está relacionada com atribuições específicas quando formos declarar nossas variáveis. Podemos por exemplo, proteger um atributo interno do objeto contra modificações diretas. Sabemos que essas alterações devem ocorrer por meio de métodos adequados, criados para acesso e modificação desses atributos.
Quando decidimos colocar o modificar de acesso privado em um atributo, significa que:
a. este atributo privado é acessível a todas as classes.
b. este atributo privado é acessível apenas a classes do mesmo pacote.
c. este atributo privado é acessível a classes que herdam essa classe.
d. este atributo privado somente é acessível aos objetos que fazem referência a esta classe.

Prévia do material em texto

Usuário DHONATAS WENDREY DOS REIS 
Curso Bloco 2 - CCO04087 PROGRAMAÇÃO ORIENTADA A OBJETOS PNA (ON) - 
201910.213.01 
Teste ATIVIDADE 2 
Iniciado 24/05/19 20:27 
Enviado 27/05/19 20:16 
Status Completada 
Resultado da 
tentativa 
2,25 em 2,5 pontos 
Tempo decorrido 71 horas, 48 minutos 
Resultados exibidos Respostas enviadas, Respostas corretas, Comentários 
• Pergunta 1 
0,25 em 0,25 pontos 
 
Sabemos que, após criadas nossas classes, precisamos elaborar uma relação na qual os objetos 
de classes diferentes consigam se comunicar. Essa comunicação é chamada de relação lógica e 
pode ser do tipo associação, composição e agregação. Sobre esse tema, analise as afirmações 
abaixo: 
 
Associação significa criar uma conexão entre classes, fazendo com que seus objetos tenham 
uma relação. 
A associação é realizada, após ambos os atributos forem inicializados. 
Agregação é utilizada quando uma classe precisa utilizar atributos de outra classe. 
Composição é uma variação da relação agregação, sua única diferença se dá pelo fato de que a 
classe responsável por criar as outras classes for destruída, as outras classes serão 
inutilizáveis. 
 
 
De acordo com as afirmações apresentadas, assinale a alternativa correta. 
 
Resposta Selecionada: d. 
I, II e IV. 
Resposta Correta: d. 
I, II e IV. 
Feedback da 
resposta: 
A resposta está correta. Aprendemos que a relação de agregação é bem similar à 
de composição. Mas, quando destruímos a classe que faz agregação com outra, 
não significa destruir essa outra classe. Já na associação, existe uma conexão 
entre as classes, entre seus objetos. 
 
 
• Pergunta 2 
0,25 em 0,25 pontos 
 
O Java possui uma API que possibilita agrupar um conjunto de objetos. Dessa forma, por 
intermédio de suas interfaces, podemos realizar algumas operações básicas nos objetos 
contidos nessa coleção. Estamos falando sobre a API Collections, um conjunto bem modelado de 
interfaces e classes, que representam um grupo de objetos de uma mesma unidade. Ou seja, 
utilizando coleções, temos acessos a essas interfaces (List, Queue, Map, Set) que possuem em 
sua implementação, métodos com operações básicas. 
 
Operações estas que podem ser de inserção, remoção, ordenação e outros.Sobre a API 
Collections, marque a alternativa correta. 
Resposta Selecionada: c. 
Na interface Queue, podemos inserir elementos duplicados 
Resposta Correta: c. 
Na interface Queue, podemos inserir elementos duplicados 
Feedback da 
resposta: 
A resposta está correta. Todos as implementações, disponíveis pela interface 
Queue, permitem que existam elementos duplicados, porém é importante 
lembrar que nessa implementação, a ordenação de inserção e remoção dos 
elementos segue um padrão do tipo “PILHA”. 
 
 
• Pergunta 3 
0,25 em 0,25 pontos 
 
Quando falamos sobre encapsulamento, podemos achar que encapsular significa apenas ocultar 
determinadas informações de implementação. Apesar de ocultar, ser um conceito realizado pelo 
encapsulamento, não significa que ocultaremos informações de uma classe para o restante do 
código. Na verdade, quando encapsulamos, estamos restringindo o acesso apenas a alguns 
atributos e métodos de uma classe/objeto para as outras classes/objetos. Porém, ainda 
conseguimos acesso a essas informações ocultas pelos métodos de leitura e escrita. 
Sobre encapsulamento, escolha a alternativa correta. 
 
 
Resposta 
Selecionada: 
b. 
O atributo deverá ser declarado sempre como privado, pois a visibilidade 
dele é controlada pelos métodos. 
Resposta Correta: b. 
O atributo deverá ser declarado sempre como privado, pois a visibilidade 
dele é controlada pelos métodos. 
Feedback 
da resposta: 
A resposta está correta. Como vimos, a identificação de visibilidade dos atributos 
deve ser projetada, de forma que não danifique o processo lógico do nosso 
programa. Precisamos analisar as regras de negócio que envolvem nosso 
problema, para evitar possíveis erros. Só devemos declarar como public, se 
realmente for necessário. 
 
 
• Pergunta 4 
0,25 em 0,25 pontos 
 
Nosso algoritmo é construído por meio de comando de controle de fluxo e repetições. Sabemos 
que, para realizarmos esses comandos, podemos fazer uso das instruções if-else, switch-case, 
para tomada de decisões, como também os comandos for, while, do-while, para comandos de 
repetições. Vamos analisar o trecho de código abaixo: 
class Main { 
 public static void main(String[] args) { 
 int cont = 0; 
 do { 
 cont = cont+1; 
 if(num == cont) break; 
 
 } 
 while(num % cont == 0); 
 System.out.print(cont); 
 } 
} 
Qual será a saída do algoritmo? 
 
Resposta Selecionada: a. 
5. 
Resposta Correta: a. 
5. 
Feedback da 
resposta: 
A resposta está correta. Vimos que, quando utilizamos o do-while, garantimos 
que as instruções dentro do bloco deverão ser executadas, pelo menos uma 
vez. Após isso, é realizado a verificação de condição da estrutura. 
 
 
• Pergunta 5 
0,25 em 0,25 pontos 
 
Sabemos que, na linguagem Java, podemos atribuir o valor de um tipo de variável a outro tipo 
de variável. Ou seja, fazemos o casting com as variáveis. Porém, entendemos que, para 
realizarmos esse procedimento precisamos obedecer às regras do compilador, de forma que 
não ocasione um erro em nosso programa. Utilizamos casting de variáveis, de forma que nos 
possibilite declarar variáveis de um tipo de dado mais genérico e fazer essas variáveis 
referenciarem objetos de tipos de dado mais específico. Deixando o desenvolvedor com mais 
liberdade, quando construir a lógica do seu programa.Sabendo que precisamos obedecer a 
regra de conversão, analise as declarações de variáveis abaixo: 
 
int d = (int) 5.1987; 
float e = (float) 5.0; 
int f = (int) 13.2; 
double g = (int) 3.14 
Qual das opções abaixo corresponde a um conjunto de impressões das variáveis declaradas? 
 
 
Resposta 
Selecionada: 
a. 
System.out.println(d); //Imprime 5 e System.out.println(e); //Imprime 
5. 
Resposta Correta: a. 
System.out.println(d); //Imprime 5 e System.out.println(e); //Imprime 
5. 
Feedback da 
resposta: 
A resposta está correta. De acordo com as regras de conversões do casting, 
quando realizamos uma conversão de uma variável double para int, os valores 
 
numéricos serão convertidos para um número inteiro, ignorando assim os 
números após a vírgula. 
 
• Pergunta 6 
0 em 0,25 pontos 
 
Sabemos que o paradigma de orientação a objeto nos ajuda a programar de maneira organizada 
e resolve vários problemas enfrentados pela programação estruturada. Para programar de 
maneira orientada a objeto, fazemos o uso de alguns conceitos. Por exemplo, classe, objetos, 
atributos e métodos. Sabendo disso, analise o código abaixo: 
 
class Conta { 
 public int numero; 
 private double saldo; 
 private String nomeCliente; 
 
 Conta( ) { 
 System.out.println("Iniciando conta"); 
 } 
 
 
 public void realizarSaque(double valor) { 
 this.saldo = this.saldo - valor; 
 } 
 
 
 public double verSaldo() { 
 return this.saldo; } 
 } 
 
 
 class SistemaBanco { 
 public static void main(String[] args) { 
 Conta minhaConta = new Conta(); 
 minhaConta.numero = 1; 
 minhaConta.saldo = 100; 
 minhaConta.nomeCliente = "Eduardo"; 
 minhaConta.RealizarSaque(10); 
 
 System.out.println(minhaConta.verSaldo()); 
 } 
 } 
 
Qual dasalternativas abaixo é verdadeira? 
Resposta 
Selecionada: 
b. 
Não é possível acessar apenas o atributo saldo na função main, pois esse 
atributo é privado. 
Resposta Correta: c. 
Não é possível acessar o atributo saldo e nomeCliente na função main, 
pois esses atributos são privados. 
Feedback da 
resposta: 
Sua resposta está incorreta. Sugerimos a releitura do capítulo. A relação de uma 
classe com seus objetos deve sugerir quais atributos e comportamentos podem 
ser compartilhados e executados em outra classe. Para isso, precisamos saber 
identificar qual o tipo dos nossos atributos. 
 
 
• Pergunta 7 
0,25 em 0,25 pontos 
 
Sabemos que, em sua estrutura, a interface Map permite que cada elemento armazene duas 
informações. Uma delas será a chave, na qual não poderá ser duplicada, ou seja, apenas um 
elemento daquela coleção poderá ter aquela informação. A outra informação é chamada de 
valor, essa poderá ser encontrada com a mesma informação em outro elemento da coleção. Para 
utilizarmos essa interface, podemos implementar por LinkedHashMap, HashMap ou TreeMap. 
O programa abaixo está implementado com HashMap, analise: 
public static void main(String[] args){ 
 Map<Integer,String> cliente = new HashMap<Integer,String>( ); 
 cliente.put(123, “Maria”); 
 cliente.put(452, “João”); 
 cliente.put(426, “Gabriel”); 
 cliente.put(147, “Ana”); 
 
 String cli = cliente.get(452); 
 cliente.remove(147); 
 Boolean verificar = cliente.containsKey(123); 
 System.out.println(cli); 
 if(verificar) { 
 System.out.println(“OK”); 
 }cliente.clear(); 
} 
 
Após análise do código, qual das opções abaixo corresponde à execução do código? 
Resposta Selecionada: e. 
A instrução System.out.println(cli); imprime o valor “João”. 
Resposta Correta: e. 
A instrução System.out.println(cli); imprime o valor “João”. 
Feedback da 
resposta: 
A resposta está correta. De acordo com a interface Map, utilizando o método 
cliente.get do programa e passando como parâmetro a chave 452, o nosso 
programa deverá retornar, após realizar a busca na coleção, o valor “João”. 
 
 
• Pergunta 8 
0,25 em 0,25 pontos 
 
Sabemos que, após criadas nossas classes, precisamos elaborar uma relação na qual os objetos 
de classes diferentes consigam se comunicar. Essa comunicação é chamada de relação lógica e 
pode ser do tipo associação, composição e agregação. Sobre esse tema, analise as afirmações 
abaixo: 
 
 I. Associação significa criar uma conexão entre classes, fazendo com que seus objetos tenham 
uma relação. 
 II. A associação é realizada, após ambos os atributos forem inicializados. 
 III. Agregação é utilizada quando uma classe precisa utilizar atributos de outra classe. 
 IV. Composição é uma variação da relação agregação, sua única diferença se dá pelo fato de 
que a classe responsável por criar as outras classes for destruída, as outras classes serão 
inutilizáveis. 
 
De acordo com as afirmações apresentadas, assinale a alternativa correta. 
 
 
Resposta Selecionada: a. 
I, II e IV. 
Resposta Correta: a. 
I, II e IV. 
Feedback da 
resposta: 
A resposta está correta. Aprendemos que a relação de agregação é bem similar à 
de composição. Mas, quando destruímos a classe que faz agregação com outra, 
não significa destruir essa outra classe. Já na associação, existe uma conexão 
entre as classes, entre seus objetos. 
 
 
• Pergunta 9 
0,25 em 0,25 pontos 
 
Uma das características existente na programação orientada a objetos está relacionada com 
atribuições específicas quando formos declarar nossas variáveis. Podemos por exemplo, 
proteger um atributo interno do objeto contra modificações diretas. Sabemos que essas 
alterações devem ocorrer por meio de métodos adequados, criados para acesso e modificação 
desses atributos. Podendo ser do tipo private, public ou protect. Por exemplo, public int 
idade;private String nome;protect int cpf; 
 
Quando utilizamos POO, podemos definir quais modificadores de acesso melhor se encaixam 
com nossos atributos. Quando decidimos colocar o modificar de acesso privado em um atributo, 
significa que: 
Resposta 
Selecionada: 
d. 
este atributo privado somente é acessível aos objetos que fazem 
referência a esta classe; 
Resposta Correta: d. 
este atributo privado somente é acessível aos objetos que fazem 
referência a esta classe; 
Feedback da 
resposta: 
A resposta está correta. Quando declaramos um atributo com a visibilidade de 
private, este atributo somente poderá ser acessado pelos métodos internos 
desse objeto. 
 
 
• Pergunta 10 
0,25 em 0,25 pontos 
 
Quando vamos desenvolver um programa, sabemos que podemos optar por um dos 
dois paradigmas da programação: a Programação Estruturada e a Programação 
Orientada a Objetos. Apesar de suas similaridades e diferenças, para realizarmos um 
bom programa precisamos analisar qual programação é a mais adequada para aquele 
problema em questão. As principais diferenças entres esses paradigmas, é que a PE se 
baseia uma ideia de programação mais voltada ao pensamento de máquina, enquanto 
a POO se baseia em um pensamento de programação mais voltado ao pensamento 
humano. 
Nesse contexto, analise as afirmações abaixo e identifique quais correspondem à 
programação orientada a objeto. 
 
I. Consistem em identificar os objetos e as operações relevantes 
no mundo real. 
II. O mapeamento desses problemas em representações abstratas 
no espaço de soluções. 
III. Os mecanismos que compõem um programa podem ser 
identificados como seleção, sequência e iteração. 
IV. Não existem objetos, pois são dados, e os dados possuem 
comportamentos que são considerados em separado. 
 Agora, assinale a alternativa que apresenta a sequência correta de respostas. 
 
 
Resposta Selecionada: a. 
V, V, F, F. 
Resposta Correta: a. 
V, V, F, F. 
Feedback 
da 
resposta: 
A resposta está correta. O paradigma de orientação a objeto tenta 
retratar os conceitos do mundo real para a programação de uma forma 
mais abstrata. Dessa forma aprendemos uma lógica de identificar o que 
seriam nossos objetos e quais seriam seus atributos e comportamentos.

Mais conteúdos dessa disciplina