Duvida uml

Pessoal, estou estudando uml agora e queria saber que tipo de relacionamento é esse ai entre as classes. Seria agregação, gener

http://img21.imageshack.us/my.php?image=umlke2.jpg

e a montagem dela o certo seria esse ai baixo?

package Exec1;

import java.util.Date;


public class locacao {
	
	private Date dataInicio;
	private Date dataFim;
	
	private ItemLocavel itemLocavel;
	
	public double getValorUnit(){
		return 0;
		
	}
	
	public double getValorTotal(){
		return 0;
		
	}

	

}

public class ItemLocavel {

	
	private double valorDaLocacao;

	/**
	 * @return  the valorDaLocacao
	 * @uml.property  name="valorDaLocacao"
	 */
	public double getValorDaLocacao() {
		return valorDaLocacao;
	}

	/**
	 * @param valorDaLocacao  the valorDaLocacao to set
	 * @uml.property  name="valorDaLocacao"
	 */
	public void setValorDaLocacao(double valorDaLocacao) {
		this.valorDaLocacao = valorDaLocacao;
	}
	
	
}


A princípio é isso (a menos que se vá fazer a implementação correta dos métodos é claro). Mas a imagem que aparece lá está cortada. Não tem mais nada para baixo?

eu que cortei para só separar do restante do diagrama, mais nessa duas classes não tem mais nada.

e como eu posso fazer uma associação entre dois objetos?

exemplo objeto b da Classe B deve associar com o objeto a da classe A

Suas dúvidas sugerem uma revisão nas teorias da UML o mais rápido possível (eu já estou fazendo a minha de novo rsrsrsr).

Então… as agregações são uma especie de associação, na verdade elas são associações também; a diferença é que elas passam mais informações a respeito da associação demonstrada no modelo.

A palavra associação é utilizada quando vc está falando da forma estática do modelo; é a representação da relação entre duas CLASSES.

Entre os objetos o que é associação vira link, quando vc fala disto está se referindo ao aspecto dinamico do seu modelo; é a representação da relação entre dois ou mais OBJETOS.

Para associações você tem o DIAGRAMA DE CLASSES, para links você tem o DIAGRAMA DE OBJETOS; um tem a ver com o outro mais em vários momentos são completamente diferentes, vale a pena pesquisar sobre esta questão, vai mudar bastante sua forma de ver as coisas.

Repare que os diagramas são dividido em dois grandes grupos O ESTATICO e o DINAMICO.

flws

[quote=dead_fly_]Pessoal, estou estudando uml agora e queria saber que tipo de relacionamento é esse ai entre as classes. Seria agregação, gener

http://img21.imageshack.us/my.php?image=umlke2.jpg

e a montagem dela o certo seria esse ai baixo?

package Exec1;

import java.util.Date;


public class locacao {
	
	private Date dataInicio;
	private Date dataFim;
	
	private ItemLocavel itemLocavel;
	
	public double getValorUnit(){
		return 0;
		
	}
	
	public double getValorTotal(){
		return 0;
		
	}

	

}

public class ItemLocavel {

	
	private double valorDaLocacao;

	/**
	 * @return  the valorDaLocacao
	 * @uml.property  name="valorDaLocacao"
	 */
	public double getValorDaLocacao() {
		return valorDaLocacao;
	}

	/**
	 * @param valorDaLocacao  the valorDaLocacao to set
	 * @uml.property  name="valorDaLocacao"
	 */
	public void setValorDaLocacao(double valorDaLocacao) {
		this.valorDaLocacao = valorDaLocacao;
	}
	
	
}


[/quote]

O que rola nessa uml é uma herança, você tem de usar um extends para relacionar as classes.

public class ItemLocavel extends locacao

Assim a classe ItenLocavel passa a ser uma classe filha da classe locacao, herdando tudo o que estiver dentro dela.

[quote=Paulino][quote=dead_fly_]Pessoal, estou estudando uml agora e queria saber que tipo de relacionamento é esse ai entre as classes. Seria agregação, gener

http://img21.imageshack.us/my.php?image=umlke2.jpg

e a montagem dela o certo seria esse ai baixo?

package Exec1;

import java.util.Date;


public class locacao {
	
	private Date dataInicio;
	private Date dataFim;
	
	private ItemLocavel itemLocavel;
	
	public double getValorUnit(){
		return 0;
		
	}
	
	public double getValorTotal(){
		return 0;
		
	}

	

}

public class ItemLocavel {

	
	private double valorDaLocacao;

	/**
	 * @return  the valorDaLocacao
	 * @uml.property  name="valorDaLocacao"
	 */
	public double getValorDaLocacao() {
		return valorDaLocacao;
	}

	/**
	 * @param valorDaLocacao  the valorDaLocacao to set
	 * @uml.property  name="valorDaLocacao"
	 */
	public void setValorDaLocacao(double valorDaLocacao) {
		this.valorDaLocacao = valorDaLocacao;
	}
	
	
}


[/quote]

O que rola nessa uml é uma herança, você tem de usar um extends para relacionar as classes.

public class ItemLocavel extends locacao

Assim a classe ItenLocavel passa a ser uma classe filha da classe locacao, herdando tudo o que estiver dentro dela.[/quote]

Viajou Paulino, a seta que indica herança é diferente. Isso indica uma associação, indicando adicionalmento o sentido da navegação (quem enxerga quem).

[quote=rmendes08][quote=Paulino][quote=dead_fly_]Pessoal, estou estudando uml agora e queria saber que tipo de relacionamento é esse ai entre as classes. Seria agregação, gener

http://img21.imageshack.us/my.php?image=umlke2.jpg

e a montagem dela o certo seria esse ai baixo?

package Exec1;

import java.util.Date;


public class locacao {
	
	private Date dataInicio;
	private Date dataFim;
	
	private ItemLocavel itemLocavel;
	
	public double getValorUnit(){
		return 0;
		
	}
	
	public double getValorTotal(){
		return 0;
		
	}

	

}

public class ItemLocavel {

	
	private double valorDaLocacao;

	/**
	 * @return  the valorDaLocacao
	 * @uml.property  name="valorDaLocacao"
	 */
	public double getValorDaLocacao() {
		return valorDaLocacao;
	}

	/**
	 * @param valorDaLocacao  the valorDaLocacao to set
	 * @uml.property  name="valorDaLocacao"
	 */
	public void setValorDaLocacao(double valorDaLocacao) {
		this.valorDaLocacao = valorDaLocacao;
	}
	
	
}


[/quote]

O que rola nessa uml é uma herança, você tem de usar um extends para relacionar as classes.

public class ItemLocavel extends locacao

Assim a classe ItenLocavel passa a ser uma classe filha da classe locacao, herdando tudo o que estiver dentro dela.[/quote]

Viajou Paulino, a seta que indica herança é diferente. Isso indica uma associação, indicando adicionalmento o sentido da navegação (quem enxerga quem).[/quote]

Tem razão, sou réu de culpa…
Na verdade ocorre uma instancia de classe, dizemos que ItemLocavel é uma instancia da classe Locacao.

então para usar os atributos da classe locacao fazemos:

Locacao item=new Lacacao();

item.getValorUnit(Valor de entrada);