eu estou apreendendo diagramas e fiquei perdida com essa questão. Se não estou enganada a classe Sessão esta herdando 2 outras certo? Filme e Ingresso? ou não? como eu faço pra representar isso em java?
Quem desenhou esse diagrama?
Ele parece mais um Modelo Entidade-Relacional utilizando classes ao invés de tabelas.
Não há nenhuma relação de herança nesse diagrama, só há uma composição, seu diagrama diz que uma Sessao
é composta de 1 ou mais Sala
s, pra mim não faz sentido.
A linha pontilhada que tem na classe Sessão
, só representa uma relação de dependência, mas não está claro se a dependência é das duas classes Filme
e Ingresso
pois o traço pontilhado está conectado ao traço de multiplicidade, nunca vi isso num diagrama de classes.
A representação dos Enums também está estranha contendo atributo privados do tipo int
e String
, quando em Java as constantes dos enums são públicas e o seu tipo de dado é o próprio enum.
Como disse antes, parece que alguém misturou um diagrama MER com diagrama de classes.
Enfiaram uma classe associativa (Sessao) no meio de um relacionamento 1…*. Da vontade de chorar viu… Enums com atributos são possíveis, mas são usadas em situações bem específicas… Do jeito que está no diagrama é justamente isso que está representado, mas parece que o professor não sabe muito bem como modelar, pq não é isso que ele quis dizer tbm lendo os atributos. A modelagem de uma enum da forma correta seria assim:
Enfim @ariadny… Com o @staroski disse, esse diagrama está bem estranho… Não concordo tbm com o relacionamento entre Sessao e Sala. Duvido que seu professor vá corrigir e peitar ele, provavelmente, não vai dar certo a não ser que você entenda mais que ele. Faça o que está sendo pedido. Cada Sessão terá uma referência a um Filme e uma referência a um Ingresso. Do ponto de vista de implementação, esse relacionamento N:M entre Ator e Filme também pode ser um problema… Enfim, seria algo assim (simplificado).
public class Filme {
...
}
public class Ingresso {
...
}
public class Sessao {
private Filme filme;
private Ingresso ingresso;
...
}
public class Sala {
private Sessao sessao;
...
}
public class Ator {
}
certo moço vou fazer isso, mas me tire uma duvida
na classe filme e ingresso eu preciso colocar tipo assim:
private Sessao [] sessao;
?
Se vc quiser representar os dois lados do relacionamento, no lado do “muitos” você usa um array, ou alguma estrutura de dados como uma lista.
entendi, obrigadaaa