Baixe o app para aproveitar ainda mais
Prévia do material em texto
Atividade 2 - Programação Orientada a Objetos 1- 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: VVFF 2- “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: II e III 3 - “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: 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 4 - “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: Agrupar um conjunto de objetos de forma que se possam desenvolver operações básicas nessa coleção. 5 - “Quando os componentes de software colaboram para cumprir uma tarefa, dizemos que a interface entre eles deve ser clara e bem definida. por interface queremos dizer as partes de uma classe que são conhecidas por outras classes e com as quais essas classes contam. Considere, por exemplo, um projeto para desenvolver software para operar uma calculadora aritmética. Uma maneira de dividir esse projeto é em duas partes importantes: uma parte responsável por permitir que os usuários insiram cálculos e outra para implementar a lógica aritmética dos cálculos.”. (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. 150.). Podemos compreender que a herança associa-se ao polimorfismo, que na orientação a objetos pode assumir diferentes comportamentos. Como se apresenta o polimorfismo na forma de sobreposição? Resposta: Quando são criadas as coleções se tem acesso aos métodos já implementados na maioria das interfaces. 6 - “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: É nomeado um método de acesso com set sempre que este método for modificar algum campo ou atributo de uma classe. 7 - “Chamamos métodos que alteram o estado de seu objeto de métodos modificadores. Da mesma maneira como pensamos nos métodos de acesso como solicitações de informações (perguntas), você pode pensar nos métodos modificadores como solicitações para um objeto alterar seu estado. Um efeito característico de um método modificador é que um objeto exibirá com frequência o comportamento ligeiramente antes e depois de ser chamado.”. (BARNES, D. J.; KOLLING, M. Programação orientada a objetos em Java. São Paulo: Pearson Prentice Hall, 2004. p. 28.). Os modificadores de acesso permitem liberar, ou não, informações do código. Neste sentido, analise os modificadores e associe com as afirmativas. (1) Public. (2) Protect. (3) Private. ( ) Permite acesso à classe, pacote, subclasse e globalmente. ( ) Permite acesso à classe, pacote, subclasse, mas não globalmente. ( ) Permite acesso à classe, não ao pacote, nem subclasse e nem globalmente. Agora, assinale a alternativa que apresenta a sequência correta. Resposta: 1, 2, 3 8 - “O paradigma da orientação a objetos, que trabalha com a prática de dividir os objetos do mundo real em classes, agrupando os que têm características (atributos) em comum, se resume a uma classificação. Entre todas as linguagens existentes, a classificação ainda é considerada a melhor, por assegurar uma arrumação lógica dos assuntos dentro de uma coleção. O objetivo de toda classificação é estabelecer uma ordem ou organização das coisas e dos pensamentos”..”. (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. 97.). Quando se programa em orientação a objetos é fundamental ter domínio sobre os conceitos fundamentais, como o conceito de coleção. Neste sentido, qual o fundamento da Collections Framework? Resposta: Representa um conjunto de interfaces e classes para representar e tratar grupos de dados comouma única unidade. 9 - “Ao escrever um programa de computador em uma linguagem orientada a objetos, você criará, em seu computador, um modelo de alguma parte do mundo. As partes das quais o modelo é construído são os objetos que aparecem no domínio do problema. Esses objetos devem ser representados no modelo de computador que estiver sendo criado. Os objetos podem ser categorizados e uma classe descreve - de maneira abstrata - todos os objetos de um tipo particular.”. (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. 2.). Pelo enunciado, podemos que os programas desenvolvidos em linguagem orientada a objetos representam uma imagem do mundo. Nesta representação de objetos encontra-se a ideia de encapsulamento. O que significa encapsulamento em orientação a objeto? Resposta: Encapsular significa esconder detalhes do código durante a implementação. 10 - “Os modificadores de acesso definem a visibilidade de um campo, construtor ou método. Elementos públicos são acessíveis a partir de dentro da mesma classe e de outras classes; elementos privados são acessíveis somente a partir de dentro da mesma classe. Por outro lado, o ocultamento das informações é um princípio que declara que detalhes internos da implementação de uma classe devem ser ocultos de outras classes.”. (BARNES, D. J.; KOLLING, M. Programação orientada a objetos em Java. São Paulo: Pearson Prentice Hall, 2004. p. 138.). Podemos compreender a importância dos princípios fundamentais de modificadores de acesso e ocultamento nas classes. Neste sentido, qual o objetivo do modificador Private? Resposta: Deixa os atributos visíveis apenas para a classe na qual eles estão declarados.
Compartilhar