Atividade de associação, agregação e composição

2 respostas
J

Boa tarde gente, preciso de uma ajuda urgente, tenho essas atividades para fazer, já criei as classes, mas não consegui criar a classe principal com essas exigências. Segue abaixo atividades, quem puder me ajudar, fico grato demais!!!

**ATIVIDADE 1: **Utilizando algum programa para criação de diagramas de classes, desenvolva um
diagrama que contenha as seguintes funcionalidades:
a) Uma classe chamada Universidade, que terá como atributos: nome e local. Além disso,
deve possuir um método construtor e métodos para encapsulamento dos seus
atributos.
b) Uma classe chamada Pessoa, com os atributos: nome e data de nascimento (que pode
ser String). Assim como na outra classe, crie um método construtor e métodos para
encapsulamento de seus atributos.
c) Cada pessoa poderá estar associada a uma universidade.
d) A classe pessoa deve possuir um método que informe seus atributos e a universidade
em que trabalha.
ATIVIDADE 2: Implemente o diagrama de classes proposto na ATIVIDADE 1 em Java. Crie ainda
uma classe para testar a aplicação, que deve realizar as seguintes tarefas:
• Crie dois objetos da classe Pessoa, um representando Albert Einstein, nascido em
14/03/1879 e outro representando Isaac Newton, nascido em 04/01/1643.
• Crie dois objetos da classe Universidade, associando um para Einstein (Universidade de
Nova Jersey – Estados Unidos da Amética) e outro para Newton (Universidade de
Cambridge – Inglaterra).
• Para ambos os objetos criados, chame o método proposto da ATIVIDADE 1 (d).
• [Opcional] Construa uma interface gráfica.
ATIVIDADE 3: Adicione ao projeto das ATIVIDADE 1 uma classe Departamento, que possui o
atributo nome. A classe deve possui um construtor e métodos de encapsulamento. A
Universidade deve estar composta por vários departamentos (a sugestão é que se utilize um
ArrayList).
Adapte também a classe Pessoa para que ela tenha uma referência ao Departamento onde
trabalha, ou seja, deve possuir uma associação com a classe Departamento.
ATIVIDADE 4: Implemente no projeto proposto da ATIVIDADE 2 as mudanças propostas na
ATIVIDADE 3. Possibilite também ao aplicativo realizar as seguintes tarefas:
• Relacionar departamentos a uma Universidade.
• Relacionar uma pessoa a um departamento.

2 Respostas

J

O exercício é meio estranho…

1 - Diagrama de Classes

image

2 - Universidade

public class Universidade {
	private String nome;
	private String local;
	
	public Universidade(String nome, String local){
		this.setNome(nome);
		this.setLocal(local);
	}
	
	public void setNome(String nome){
		this.nome = nome;
	}
	
	public String getNome(){
		return nome;
	}
	
	public void setLocal(String local){
		this.local = local;
	}
	
	public String getLocal(){
		return local;
	}
}

3 - Pessoa

public class Pessoa {
	private String nome;
	private String dataNascimento;
	private Universidade universidade;
	
	public Pessoa(String nome, String dataNasc, Universidade univ){
		this.setNome(nome);
		this.setDataNascimento(dataNasc);
		this.lecionar(univ);
	}
	
	public void lecionar(Universidade universidade){
		this.universidade = universidade;
	}
	
	public String getUniversidade(){
		return universidade.getNome();
	}
	
	public void setNome(String nome){
		this.nome = nome;
	}
	
	public String getNome(){
		return nome;
	}
	
	public void setDataNascimento(String dataNascimento){
		this.dataNascimento = dataNascimento;
	}
	
	public String getDataNascimento(){
		return dataNascimento;
	}
}

4 - Principal

public class Principal {
	public static void main(String[] args){
		
		Universidade universidade1 = new Universidade("Universidade de Nova Jersey", "Estados Unidos");
		Universidade universidade2 = new Universidade("Universidade de Cambridge", "Inglaterra");
		
		Pessoa pessoa1 = new Pessoa("Albert Einstein", "14/03/1829", universidade1);
		Pessoa pessoa2 = new Pessoa("Isaac Newton", "04/01/1643", universidade2);
		
		System.out.println("O Dr. " + pessoa1.getNome() + " leciona em " + pessoa1.getUniversidade() + ".");
	}
}

Teste:

image

É só para tu ter uma base, daí tu veja se te atende e faça o restante do exercício.

J

Muito obrigado pela ajuda, me ajudou demais! Você teria alguma dica para eu fazer essa parte do array list?

Criado 22 de setembro de 2019
Ultima resposta 23 de set. de 2019
Respostas 2
Participantes 2