Baixe o app para aproveitar ainda mais
Prévia do material em texto
Classes e objetos são dois conceitos-chave da programação orientada a objetos. Com esses conceitos, temos também os paradigmas da programação orientada a objetos, que nos auxiliam no desenvolvimento de software. Com relação a estes conceitos, é correto afirmar que: a) Se pode definir uma classe como um pacote de software, de modo que, com a herança, um objeto define comportamento e forma padrão para a construção de uma nova classe abstrata. b) Uma classe é uma descrição de um ou mais objetos por meio de um conjunto uniforme de atributos e serviços. Além disso, pode conter uma descrição de como criar novos objetos na classe. c) Uma classe é uma abstração de alguma coisa no domínio de um problema ou na sua implementação, refletindo a capacidade de um sistema para manter informações sobre ela, interagir com ela ou ambos. d) um objeto é um protótipo que define os atributos e métodos comuns a todas as classes de um certo tipo. e) o polimorfismo caracteriza-se pela possibilidade de objetos distintos possuírem métodos com nomes idênticos, mas com implementações distintas. A O polimorfismo caracteriza-se pela possibilidade de objetos distintos possuírem métodos com nomes idênticos, mas com implementações distintas. B Um objeto é um protótipo que define os atributos e métodos comuns a todas as classes de um certo tipo. Você acertou! Um dos paradigmas da programação orientada a objetos, chamado Polimorfismo, nos permite sobrescrever os métodos de uma classe derivada, em uma relação de herança. Esses métodos, embora tenham a mesma assinatura em ambas as classes, têm ações diferentes, conforme visto no slide 3 da aula 6. AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 1 de 8 04/05/2016 13:32 C Uma classe é uma abstração de alguma coisa no domínio de um problema ou na sua implementação, refletindo a capacidade de um sistema para manter informações sobre ela, interagir com ela ou ambos. D Uma classe é uma descrição de um ou mais objetos por meio de um conjunto uniforme de atributos e serviços. Além disso, pode conter uma descrição de como criar novos objetos na classe. E Se pode definir uma classe como um pacote de software, de modo que, com a herança, um objeto define comportamento e forma padrão para a construção de uma nova classe abstrata Um sistema de software possui uma classe X em que os atributos foram escondidos das outras classes, sendo que, caso haja necessidade, forma criados métodos para obter e setar o valor dos atributos. Para a POO, a classe X segue o paradigma: A Abstração B Agregação C Polimorfismo D Classe e objeto E O paradigma do encapsulamento, como vimos no slide 5 da aula 4, prevê que os atributos da classe sejam sempre privados, com métodos de acesso públicos. Considere que devemos criar um sistema para cadastrar pessoas. Neste sistema deve ser cadastrado o nome da pessoa, seu CPF e o endereço da mesma. Em um sistema orientado a objetos, podemos dizer que: A teremos uma classe chamada Pessoa com nome, CPF e endereço sendo atributos da mesma. B podemos criar uma classe chamada Pessoa com nome como atributo. Você acertou! Você acertou! Aplicando a regra de que os substantivos são mapeados como classes temos a classe ‘Pessoa’ com os atributos em questão, conforme visto na aula 1. AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 2 de 8 04/05/2016 13:32 C teremos uma classe chamada Pessoa com nome e endereço como atributo e CPF como método, devido ao digito verificador. D não há como transformar este sistema em um sistema orientado a objetos. E teremos uma classe chamada Pessoa, uma classe chamada Nome, uma classe chamada CPF e uma classe chamada Endereço. Considere um sistema de controle de estoque com o cadastramento de materiais e movimentação do estoque para cada Departamento de determinada empresa. Quando uma requisição de movimentação de estoque é atendida e baixada pelo Almoxarife, que é o usuário do sistema, são realizados os seguintes cálculos automáticos pelo sistema: o saldo atual do material que foi movimentado e o estoque mínimo. Do ponto de vista da POO, os cálculos automáticos são: A ações da classe Almoxarife B operações da classe Departamento C características da classe Material D operações da classe Material E atributos da classe Departamento Dentro do paradigma da programação orientada a objetos, há um mecanismo pelo qual uma classe pode estender outra classe, aproveitando seus métodos e atributos. Assinale a alternativa que apresenta o nome desse mecanismo. A Subclasse B Mensagem. C Encapsulamento. Você acertou! Conforme vimos no slide 11 da aula 1, as operações que uma classe define são as ações que os métodos podem executar. AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 3 de 8 04/05/2016 13:32 D Herança E Polimorfismo. Um analista de sistemas recebeu a seguinte especificação para definir quais seriam as classes que seriam criadas: “O sistema deverá prover a possibilidade de cadastro de projetos, atividades e recursos. Os projetos deverão ter uma lista de atividades, que por sua vez deverão ter data de início, data final e recurso responsável.” As classes que devem ser criadas são: A sistema, projeto e pessoa B data de início e data final C projeto, atividade e recurso D recurso responsável, data final e data de início E projeto e sistema A programação orientada a objetos possui vantagens e desvantagens. Como vantagem podemos dizer que o desenvolvimento é mais rápido utilizando a POO. Das alternativas abaixo, qual indica uma desvantagem da programação orientada a objetos: A os analistas podem trabalhar em um nível mais alto de abstração. B os custos de desenvolvimento da aplicação são menores. Você acertou! A herança é um paradigma de programação orientada a objetos em que existe uma relação entre uma classe base e uma classe derivada, que pode ter acesso aos atributos e aos métodos da classe base, conforme visto no slide 3 e 4 da aula 5. Você acertou! Conforme vimos na aula 1, em uma especificação, podemos mapear as classes como os substantivos, portanto, neste caso a resposta correta é a indicada. AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 4 de 8 04/05/2016 13:32 C as aplicações necessitam de um hardware mais robusto para executarem. D maior adequação a tecnologia cliente-servidor. E possibilidade de utilização de classes externas à aplicação. Um dos paradigmas da programação orientada a objetos, chamado Encapsulamento, diz que devemos proteger as características das nossas classes, fazendo com que as mesmas sejam sempre privadas e tenham acessada apenas por métodos públicos. Dentre as opções abaixo, qual implementa esta ideia: A class Pessoa { String nome; public void String nome(); } B class Pessoa { public String nome; public void setNome(String n) { nome = n; } } Você acertou! Conforme vimos na apresentação das desvantagens da programação orienta a objetos no slide 7 da apresentação. AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 5 de 8 04/05/2016 13:32 C class Pessoa { private String nome; public void setNome(String n) { nome = n; } } D class Pessoa { String nome; void setNome() { nome = “João”; } } E class Pessoa { String nome { get; set; } } Considerando a classe listada abaixo, desenvolvida para um sistema de software, e utilizando as técnicas da programação orientada a objetos: public class Agenda { private Date data; privateString desc; public Agenda(Date data, String desc) { Você acertou! O modificador ‘private’, que no Java corresponde ao modificador ‘privado, torna o elemento que ele modifica invisível para todos os outros elementos da aplicação, conforme visto no slide 6 da aula 3. AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 6 de 8 04/05/2016 13:32 this.data = data; this.desc = desc; } public Date getData() { return data; } public String getDesc() { return desc; } } Indique qual das alternativas abaixo é a correta: A para inserirmos valores no atributos ‘data’ e ‘desc’, podemos chama-los diretamente de outro objeto. B como os atributos são estáticos, não é possível chamá-los em outros objetos. C por serem atributos privados, só é possível atribuir valores a eles através do construtor da classe e obter os seus valores através dos métodos getData e getDesc. D como classe é pública, todos os atributos são automaticamente convertidos para atributos públicos. E devido aos atributos serem privados, não é possível utilizá-los dentro dos métodos, pois os mesmos estão definidos como públicos. Em um sistema de software, a classe X é superclasse de Y. Ambas implementam o método umMetodo(), mas o Você acertou! O modificador ‘private’, que no Java corresponde ao modificador ‘privado’, torna o elemento que ele modifica invisível para todos os outros elementos da aplicação, conforme visto no slide 6 da aula 3. AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 7 de 8 04/05/2016 13:32 resultado dele é diferente para cada classe. Em programação orientada a objetos, o nome deste paradigma é: A Encapsulamento. B Agregação. C Polimorfismo. D Herança múltipla. E Abstração. Você acertou! O paradigma do Polimorfismo nos diz que, em classes com relação de hierarquia, um método da classe derivada, embora tendo a mesma assinatura, pode comportar-se de forma diferente do que foi definido na classe base, conforme visto no slide 3 da aula 6. Esse tipo de Polimorfismo é chamado de sobrescrita. AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 8 de 8 04/05/2016 13:32
Compartilhar