有许多类会依赖一个/多个底层的资源。例如,拼写检查器需要依赖词典。
所以我们经常把这些写成静态工具类,或者实现为singleton
但是这些方法都是假定只有一本词典可以用。实际上,我们可能需要很多词典,因为每种语言都有自己的词典。

意思就是,这些类只能有一个实例,不能支持类的多个实例。
如果每个实例都需要特定的资源。我们就应该每创建一个新的实例,就将资源传到构造器中
这就是依赖注入的一种形式:词典是拼写检查器的一个依赖,在创建拼写检查器的时候就将词典注入其中。