AbstractBeanDefinition rbd = null;
int bdCount = beanDefinitions.size();
for (int i = bdCount - 1; i >= 0; i--) {
BeanDefinition abd = beanDefinitions.get(i);
if (rbd != null) {
rbd.overrideFrom(abd);
}
else {
if (abd instanceof RootBeanDefinition) {
rbd = new RootBeanDefinition((RootBeanDefinition) abd);
}