Buscar

Fundamentos da 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 4 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

Revisar envio do teste: ATIVIDADE 2 
 
Curso CCO04087 PROGRAMAÇÃO ORIENTADA A OBJETOS PNA (ON) - 201920.2071.01 
Teste ATIVIDADE 2 
 
Resultado da tentativa 2,5 em 2,5 pontos 
• Pergunta 1 
0,25 em 0,25 pontos 
 “Uma complicação do processo de remoção de uma coleção é que ele pode alterar os valores de índice em que 
outras notas da coleção são armazenadas. Se um item com um número de índice baixo é removido, então a 
coleção move todos os itens seguintes para frente por uma posição para preencher na lacuna. Como 
consequência os números de índice serão diminuídos por 1.”. (BARNES, D. J.; KOLLING, M. Programação 
orientada a objetos com Java – uma introdução prática usando o Bluej. 4. ed. São Paulo: Pearson Prentice Hall, 
2009. p. 83.). 
É fundamental compreender os fundamentos de orientação a objeto e a construção das coleções para não 
incorrer em erros de execução. Neste sentido, existe a árvore da hierarquia de interfaces e classes da Java 
Collections Framework , que são derivadas da interface Collection . Qual a ordem correta da hierarquia para fazer 
um sorteamento dos dados? 
 
Resposta Selecionada: 
 
. Collection > Set > SortedSet > TreeSet. 
Resposta Correta: 
 
.Collection > Set > SortedSet > TreeSet. 
Feedback da resposta: Resposta correta. A ordem correta é Collection, Set, SortedSet e TreeSet. 
 
 
• Pergunta 2 
0,25 em 0,25 pontos 
 “Um dos recursos de linguagem orientada a objetos que as tornam poderosas é que elas frequentemente são 
acompanhadas pelas bibliotecas de classes. Essas bibliotecas em geral contêm muitas centenas ou milhares de 
classes diferentes que se provaram úteis para desenvolvedores em uma ampla variedade de projetos diferentes. 
O Java tem muitas bibliotecas diferentes e são chamados de pacotes as suas bibliotecas”. (BARNES, D. J.; 
KOLLING, M. Programação orientada a objetos em Java . São Paulo: Pearson Prentice Hall, 2004. p. 77.). 
A orientação a objeto e a linguagem Java oferece uma série de facilidades para melhorar o desenvolvimento de 
códigos. Neste sentido, qual o objetivo da API Collections ? 
 
Resposta 
Selecionada: 
 
.Agrupar um conjunto de objetos de forma que se possam desenvolver 
operações básicas nessa coleção. 
Resposta Correta: 
 
.Agrupar um conjunto de objetos de forma que se possam desenvolver 
operações básicas nessa coleção. 
Feedback da 
resposta: 
Resposta correta. Collections (Coleção) representa um conjunto de interfaces e 
classes que podem ser tratados de forma única. 
 
 
• Pergunta 3 
0,25 em 0,25 pontos 
 A coleção pode conter um grupo de objetos de diferentes maneiras que Set , Liste Queue fornecem. Um 
conjunto é definido como um grupo de objetos exclusivos. O que é considerado único é definido pelo método 
iguais do tipo de objeto que ele contém. Em outras palavras, um conjunto não pode conter dois objetos iguais. Ao 
contrário de um conjunto, uma lista pode conter entradas duplicadas. 
Na linguagem Java, Collections Framework é um conjunto bem definido de interfaces e classes para representar e 
tratar grupos de dados como uma única unidade. Neste sentido, quais as afirmativas abaixo são falsas ou 
verdadeiras sobre Collections Framework ? 
 
I. ( ) Interfaces são tipos abstratos que representam as coleções. 
II. ( ) Na interface o acesso deverá ser feito obrigatoriamente pelos objetos. 
 
III. ( ) O segundo elemento da Collections são as implementações abstratas das interfaces. 
IV. ( ) Os algoritmos são os atributos que estão disponíveis pela interface. 
Agora, assinale a alternativa que apresenta a sequência correta. 
Resposta Selecionada: 
 
.V, V, F, F. 
Resposta Correta: 
 
.V, V, F, F. 
Feedback da 
resposta: 
Resposta correta. A estrutura de coleções Java é um conjunto de classes e 
interfaces que programam estruturas de dados de coleção comumente reutilizáveis. 
Embora referido como uma estrutura, ele funciona como uma biblioteca. A estrutura 
de coleções fornece as duas interfaces que definem várias coleções e classes que 
as programam. 
 
 
• Pergunta 4 
0,25 em 0,25 pontos 
 “Vimos que o uso de campos públicos é uma prática que talvez crie uma forma desnecessariamente forte de 
acoplamento entre as classes, com este acoplamento forte, pode ser necessário fazer alterações em mais de uma 
classe para o que deveria ter sido uma simples modificação. Portanto, campos públicos devem ser evitados. 
Contudo, há uma forma ainda pior de acoplamento, que é o acoplamento implícito”. (BARNES, D. J.; KOLLING, 
M. Programação orientada a objetos com Java – uma introdução prática usando o Bluej. 4. ed. São Paulo: 
Pearson Prentice Hall, 2009. p. 194.). 
 
Podemos compreender a complexidade de encapsulamento na orientação a objeto. Neste sentido, qual o objetivo 
do método set ? 
 
Resposta 
Selecionada: 
 
.É nomeado um método de acesso com set sempre que este método for 
modificar algum campo ou atributo de uma classe. 
Resposta Correta: 
 
.É nomeado um método de acesso com set sempre que este método for 
modificar algum campo ou atributo de uma classe. 
Feedback da 
resposta: 
Resposta correta. Criam-se métodos de acesso para atribuição de valores a 
esses atributos e essas propriedades de set para a escrita de um valor no 
atributo. 
 
 
• Pergunta 5 
0,25 em 0,25 pontos 
 “O encapsulamento em orientação a objeto tem uma finalidade similar à sub-rotina. Entretanto, o encapsulamento 
é estruturalmente mais sofisticado. O encapsulamento orientado a objeto é o pacote de operações e atributos o 
qual representa o estado em um tipo de objeto, de tal forma que o estado é acessível ou modificável somente pela 
interface provida pelo encapsulamento.”. (PAGE-JONES, M. Fundamentos do desenho orientado a objeto com 
UML . São Paulo: Makron Books, 2001. p. 10.). 
Podemos compreender que, na hora da implementação de classes encapsuladas, é necessário ter bastante 
cuidado sobre qual modificador de acesso utilizar. Neste sentido, qual o objetivo do método get ? 
 
Resposta 
Selecionada: 
 
.É nomeado um método de acesso com get toda vez que este método for 
executar a leitura de algum campo ou atributo de uma classe. 
Resposta Correta: 
 
.É nomeado um método de acesso com get toda vez que este método for 
executar a leitura de algum campo ou atributo de uma classe. 
Feedback da 
resposta: 
Resposta correta. Para resolver problemas de acesso às classes é necessário 
criar métodos de acesso para leitura de valores a esses atributos. Essas 
propriedades são chamadas de get. 
 
 
• Pergunta 6 
0,25 em 0,25 pontos 
 “O encapsulamento consiste em evidenciar ou não as funcionalidades do objeto ao ambiente externo. Um 
exemplo é o motor de um carro sendo um objeto acionado através do método da ignição e que [...] este método 
interage com outros métodos internos, como acender vela de ignição para prover a funcionalidade de ligar o carro. 
O método responsável por acionar a vela de ignição não está visível ao usuário do carro. Não é ele quem decide 
quando a vela irá acender ou não. Esse método é interno, pois a entidade usuário do carro, que interage com o 
carro, não interage com o motor”. (CASTRO, F. R; CRUZ. F. M.; ODDONE, N. E. O paradigma da orientação a 
objetos, a linguagem unificada de modelagem (UML) e a organização e representação do conhecimento: um 
estudo de caso de um sistema para bibliotecas. Inf. Inf ., Londrina, v. 18, n. 1, p. 82-105, 2013. p. 91. 
É possível compreender a importância do encapsulamento nos códigos orientados a objeto. Neste sentido, qual é 
a real vantagem obtida do encapsulamento no código? 
 
Resposta 
Selecionada: 
 
.Se for necessário fazer alteração no código, em vez de mudar informações em 
vários lugares do código, fará apenas a alteração necessária em um únicolugar. 
Resposta 
Correta: 
 
.Se for necessário fazer alteração no código, em vez de mudar informações em 
vários lugares do código, fará apenas a alteração necessária em um único lugar. 
Feedback da 
resposta: 
Resposta correta: Uma das grandes vantagens do encapsulamento é a facilidade 
de mudança, pois caso seja necessário, a alteração é realizada somente em um 
ponto do código e não em vários pontos distintos, tornando a alteração mais 
confiável. 
 
 
• Pergunta 7 
0,25 em 0,25 pontos 
 “Um método abstrato consiste na definição de uma assinatura na classe abstrata. Este método deverá conter uma 
implementação na classe-filha, mas não deve possuir implementação na classe em que ele é definido. Um método 
final não pode ser sobrescrito, ou seja, não pode ser redefinido na classe-filha. Para marcar um método como 
final, basta utilizar o operador final no início de sua declaração.”. (ZENZELUK, J. H.; RIBEIRO, S. Um estudo 
para a evolução do PHP com a linguagem Orientada a objetos . Revista Científica Semana Acadêmica , 
Fortaleza v. 3, n. 1, 2014.). 
No universo de orientação a objeto, existem diversos fundamentos que são de importância crítica. Neste sentido, 
para o programa funcionar, esses elementos precisam conversar entre si, interagindo de acordo com a lógica que 
implementamos. Indique quais as outras interações entre as classes estão corretas. 
I. Associação é uma conexão entre classes, consequentemente será uma conexão entre seus objetos 
também. 
II. A agregação é quando precisamos que uma classe tenha acesso a informações de outra classe, dentro de 
suas operações. 
III. Quando o programa permite fazer associação, não se separa as informações e é possível manuseá-las de 
maneira mais adequada. 
IV. Na composição, se a classe que utiliza as outras classes, deixar de existir no programa, obrigatoriamente as 
outras classes deixam de existir. 
Agora, assinale a alternativa que apresenta as afirmações corretas. 
 
Resposta Selecionada: 
 
.I, II e IV. 
Resposta Correta: 
 
.I, II e IV. 
Feedback da 
resposta: 
Resposta correta. Esse método necessariamente precisa reescrever um método existente na 
classe mãe. 
 
 
• Pergunta 8 
0,25 em 0,25 pontos 
 “Um exemplo cotidiano de um map é uma lista telefônica. Uma lista telefônica contém entradas 
e cada entrada é um par: um nome e um número de telefone. Você utiliza uma agenda de 
telefones para pesquisar um nome e obter um número de telefone. Não utilizamos um índice – 
a posição da entrada na agenda de telefones – para localizá-lo. Um map pode ser organizado 
de tal maneira que a pesquisa de um valor para uma chave seja fácil.”. (BARNES, D. J.; 
 
KOLLING, M. Programação orientada a objetos em Java. São Paulo: Pearson Prentice Hall, 
2004. p. 121.). 
Conforme citado no excerto, a interface map, na sua estrutura, permite que cada elemento 
armazene duas informações: uma chave e um valor. Indique quais as outras características da 
interface map? 
I. Na criação da implementação basta informar a chave. 
II. As chaves não podem ser duplicadas. 
III. Implementa a interface pelo uso das implementações LinkedHashMap. 
IV. No HashMap os elementos são ordenados. 
Agora, assinale a alternativa que apresenta as afirmações corretas. 
Resposta Selecionada: 
 
.II e III. 
Resposta Correta: 
 
.II e III. 
Feedback da 
resposta: 
Resposta correta. As chaves não podem ser duplicadas e a implementação da 
interface pelo uso das implementações L inkedHashMap. 
 
 
• Pergunta 9 
0,25 em 0,25 pontos 
 “As variáveis de classe são frequentemente utilizadas para armazenar um valor que deve ser sempre o mesmo 
para todas as instâncias de uma classe. Em vez de armazenar uma cópia do mesmo valorem cada objeto, o que 
seria um desperdício de espaço e que talvez fosse difícil coordenar, um único valor pode ser compartilhado entre 
todas as instâncias. Java suporta métodos de classe.”. (BARNES, D. J.; KOLLING, M. Programação orientada a 
objetos em Java . São Paulo: Pearson Prentice Hall, 2004. p. 136.). 
Podemos compreender o nível de complexidade ao criar instâncias para classes na orientação a objeto. Neste 
sentido, qual o objetivo de se criar um atributo com o tipo static ? 
I. O atributo se torna um atributo da classe. 
II. Não se torna um atributo para cada objeto do tipo daquela classe. 
III. O atributo fica restrito somente àquela classe. 
IV. Torna inacessível o conteúdo dos atributos por outras classes. 
É correto o que se afirma em: 
 
Resposta Selecionada: 
 
.I e II. 
Resposta Correta: 
 
.I e II. 
Feedback da 
resposta: 
Resposta correta. Em Java, podemos declarar essa variável como sendo do tipo 
estática ( static). Fazendo o uso do tipo static, nosso atributo se torna um atributo 
da classe, e não um atributo para cada objeto do tipo daquela classe. 
 
 
• Pergunta 10 
0,25 em 0,25 pontos 
 “A diretriz de encapsulamento (ocultar informações de implementação de visualização) sugere que somente as 
informações sobre o que uma classe pode fazer devem ser visíveis externamente, não como ela é. Isso apresenta 
uma grande vantagem: se nenhuma outra classe sabe como nossas informações são armazenadas, podemos 
facilmente alterar como elas são armazenadas sem quebrar outras classes.”. (BARNES, D. J.; KOLLING, 
M. Programação orientada a objetos em Java . São Paulo: Pearson Prentice Hall, 2004. p. 188.). 
É possível compreender a utilização de encapsulamento como uma forma de programação com maior segurança. 
Porém, qual a maneira de se acessar os atributos encapsulados? 
 
Resposta Selecionada: 
 
.Criando métodos que liberam o acesso. 
Resposta Correta: 
 
.Criando métodos que liberam o acesso.

Continue navegando