Buscar

Prova Discursiva Orientação Objeto 12 perg respondidas

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.

Continue navegando