Baixe o app para aproveitar ainda mais
Prévia do material em texto
Prova Discursiva Orientação Objeto Herança múltipla é a capacidade de uma classe ser derivada de várias classes base. Não é possível utilizarmos herança múltipla na linguagem Java Conforme vimos, a programação orientada a objetos define alguns paradigmas, que permitem que tenhamos o comportamento dos objetos no dia a dia dentro de um sistema de software. Cite e explique quais são os paradigmas da programação orientada a objetos: Encapsulamento: proteção dos atributos da classe, deixando o acesso aos mesmos para métodos públicos. Associação, Agregação e Composição: relações entre objetos: na associação temos uma relação em que os objetos não apresentam dependência entre si, na agregação, o todo depende da parte, mas a parte é independente e na composição todo e parte são dependentes entre si. Herança: relação entre classes em que uma classe base compartilha seus atributos e métodos com classes derivadas. Polimorfismo: a capacidade de um método ter seu comportamento alterado em uma classe derivada Explique o que é um objeto. Objeto é a representação de uma classe em determinado instante, ou seja, em determinado instante, representa um elemento do tipo classe. Utilizando a linguagem Java, crie a um programa que imprima a mensagem “Alo Mundo”. public classe AloMundo { public static void main(String[] args) { System.out.println(“Alo Mundo”); } } Existe um paradigma da programação orientada a objetos que trata especificamente dos tipos relacionamento entre objetos, os tipos de associação. Associação representa uma relação entre dois objetos, sem um pertencer ao outro. Agregação é um tipo específico de associação onde um todo é composto de várias partes independentes. A Composição difere da agregação no sentido do pertencimento. Um objeto irá conter outros objetos e uma parte não existirá sem a outra. Comparado com a programação estruturada cite três desvantagens da programação orienta a objetos. Complexidade; Necessidade de hardware mais robusto; Maior esforço para a modelagem de um sistema OO comparado a um sistema estruturado. Crie uma classe no Java chamada Pessoa, que terá os atributos ‘nome’, ‘endereco’ e ‘codigo’. O atributo código não pode receber valores menores que zero. Esta classe deve seguir o paradigma do Encapsulamento. public class Pessoa { private int codigo; private String nome; private String endereço; public int getCodigo() { return código; } public void setCodigo(int codigo) { if(codigo > 0) { this.codigo = código; } else { this.codigo = 0; } } public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public String getEndereco() { return endereço; } public void setEndereco(String endereço) { this.endereco = endereço; } } Na programação orientada a objetos temos alguns paradigmas que devem ser utilizados para que o desenvolvimento do sistema seja mais adequado. Um destes paradigmas é o encapsulamento. Defina o que é Encapsulamento: Encapsulamento é a possibilidade de proteger os atributos de nossa classe de acessos externos, ou seja, os atributos são modificados para acesso privado e criamos métodos públicos para acessá-los Crie, em linguagem Java, a seguinte hierarquia de classes através da herança: Animal, que deriva Mamifero, que deriva Canino, que deviva Cao e Lobo, sendo que a classe Cao deriva a classe ViraLata. public class Mamifero { } public class Mamifero extends Animal { } public class Canino extends Mamifero { } public class Cao extends Canino { } public class Lobo extends Canino { } public class ViraLata extends Cao { } O paradigma da programação orientada a objetos chamado herança permite que criemos uma hierarquia de classes entre classes base e classes derivadas. Com base nisso, o que significa Herança Múltipla e como utilizamos esse paradigma na linguagem Java? Herança múltipla é a capacidade de uma classe ser derivada de várias classes base. Não é possível utilizarmos herança múltipla na linguagem Java Um construtor é um método executado na criação de um objeto, para inicializar os atributos da classe. Como é um método podemos modificá-lo para que o mesmo seja privado utilizando a técnica dos modificadores de acesso. Qual o efeito de modificar o construtor de uma classe pra privado? Quando declaramos como privado, essa classe não pode ser construída por outro objeto; assim consegue também ter acesso a criação de objetos de si mesma. Essa técnica é chamada de singleton e constitui um design pattern bastante usado. O paradigma da Associação é uma relação entre objetos na qual não há interdependência entre os objetos. Este paradigma prevê outros 2 tipos possíveis. Cite-os e explique a diferença entre eles. Agregação: quando um objeto agrega outros objetos para criar um todo. Composição: onde um objeto é composto por outros, mas ao contrário, sem pertencimento. Quais os tipos de modificadores de acesso que podem ser utilizados no JAVA? Públicos: quando expõem os atributos e métodos que eles modificam para outros objetos, sendo possível sua visualização e alteração. Privados: quando não permitem que os métodos e atributos que eles modificam sejam visualizados ou modificados por outros objetos. Protegidos: funciona semelhante ao modificador privado, mas permite que os atributos e métodos sejam visíveis as subclasses.
Compartilhar