diff --git a/README.md b/README.md index 2085a3c..3c02853 100644 --- a/README.md +++ b/README.md @@ -16,9 +16,9 @@ Instead, you have the "same key, same bean" rule: > If two beans of the same *key* are injected by the same component, then they are the same bean instance. -This means a component contains at most one instance per bean class (unless of course you're using qualifiers). +Intuitively this means a component injects the same bean instance everywhere (unless of course you're using qualifiers or inject a provider). -If you want to re-use a bean across multiple components, use a `@Factory` or a `@Builder` to pass it. +If you want to re-use a bean across multiple components, or multiple instances of the same component, use a `@Factory` or a `@Builder` to pass it. If possible, the component will use instance that was passed this way, rather than create a new bean instance. If you inject `Provider`, rather than `TheBean` directly, calling `provider.get()` will create a fresh bean instance every time.