Рисование диаграммы сотрудничества с использованием фрагмента кода на Java
Мне нужно написать диаграмму сотрудничества для этого фрагмента кода:
public static void main(String[] args){
Playlist list = new Playlist();
list.add(new mp3("song1",5));
list.add(new wav("song2",6));
list.add(new mp3("song3",7));
list.play();
Где mp3 и wav - классы, унаследованные от класса Track, и у них есть конструктор с двумя аргументами. Кроме того, функция add принимает один аргумент типа Track. Итак, я думаю, что у нас должно быть 3 самовызова (для каждого вызова метода add), потому что это функция из списка классов, а затем один (также самовызов) для воспроизведения функции. Но не уверен, как включить объекты класса mp3 и класса wav, потому что мы вызываем только функции из списка воспроизведения класса. Итак, я не уверен, почему мы вызываем функцию play из класса mp3 (wav), а не из списка воспроизведения класса. А с другой стороны мы вызываем функцию play из play-листа.
1 ответ
Пример кода показывает только то, что делает основная функция. Поэтому все ссылки должны начинаться с . Я бы нарисовал следующие ссылки:
- "
1 new
", от до - "
2 new("song1",5)
", от доanonymous1:mp3
- "
3 add(anonymous1)
", от до - "
4 new("song2",6)
", от доanonymous2:wav
- "
5 add(anonymous2)
", от до - "
6 new("song3",7)
", от доanonymous3:mp3
- "
7 add(anonymous3)
", от до - "
8 play()
", изmain
кlist:Playlist