public override void remove(SongComponent newSongComponent) { throw new NotImplementedException(); }
abstract public void remove(SongComponent newSongComponent);
abstract public void add(SongComponent newSongComponent);
public DiskJockey(SongComponent newSongList) { songList = newSongList; }
public override void remove(SongComponent newSongComponent) { songComponents.Remove(newSongComponent); }
// Whats added into this is an interface SongComponent // Since Song and SongGroup implements SongComponents, // we can add both types of objects into this class. // Only song group can have the add feature as it is not necessarily a leaf node. public override void add(SongComponent newSongComponent) { songComponents.Add(newSongComponent); }