1.多个重载方法,底层实现是某个doXXX的方法.
如下图所示,红框中3个方法均实现自BeanFactory中的getBean方法,是重载了3个getBean。
具体实现则调用了自己的doGetBean方法。
因为:虽然是3个重载的getBean方法,参数不一样,但是作用都是获取Bean。所以他们内部的逻辑几乎是一样的,所以抽取到doGetBean中。而不同的参数差异,例如requiredType , rags typeCheckOnly则体现在doGetBean中的一些if分支中。
如下图所示,红框中3个方法均实现自BeanFactory中的getBean方法,是重载了3个getBean。
具体实现则调用了自己的doGetBean方法。
因为:虽然是3个重载的getBean方法,参数不一样,但是作用都是获取Bean。所以他们内部的逻辑几乎是一样的,所以抽取到doGetBean中。而不同的参数差异,例如requiredType , rags typeCheckOnly则体现在doGetBean中的一些if分支中。