Why to use Subject or BehaviorSubject in services when angular can detect latest values?

For example we have a service that has a list of items in it.
When we change this list in the service, all of the components that are using this list will detect this change. for example if you add a new item all of the components will detect it.
so why should we use subjects or BehaviorSubject when angular can detect changes itself ?

Source: Angular Questions