As vezes eu faço uns projetos para colocar em prática todos os cursos até o momento, e atualmente estou fazendo um projeto que tem o diagrama de classe da seguinte forma (fiz o diagrama para ficar mais fácil a visualização):
O programa começa com uma instância da Classe A. Esta classe possui um método que recebe como parâmetro, uma referência da Classe C e logo em seguida, instância um objeto da Classe B para que este parâmetro seja adicionado no construtor da Classe B. Uma vez feito isto, esta nova instância da Classe B é adicionado na lista da Classe A. Já na lista da Classe C, eu utilizo a referência existente da Classe C, chamo o método de adicionar e passo a referência da classe A. Algo do tipo: "parametroC.add(this)".
É um diagrama estranho, não vou negar. Mas eu sou iniciante e estou me esforçando para tentar simular algo da vida real. Até preciso fazer o curso de elaboração de diagramas de classe para me aprofundar melhor.
Eis então as dúvidas:
- Nessa situação, o diagrama de classes está completamente fora de questão ou dá para entender?
- Se eu serializar um objeto da Classe A, e este tiver a lista populada com vários objetos da Classe B (e consequentemente, terei diversos da Classe C também), implementar o Serializable em todas elas... Absolutamente todos os objetos serão inclusos na serialização também? (O objeto A tem uma lista de B, que possui como associação um objeto C e C tem uma lista que aponta de volta para A).
- Basicamente a mesma pergunta anterior, mas ao invés de serializar o objeto A, serializar o objeto C.
É meio loucura, eu sei, mas, como eu disse, estou aprendendo. Talvez seja uma pergunta fora de sentido, mas enfim, obrigado a quem puder me ajudar.