加热的药水 2021-02-07 23:32 采纳率: 0%
浏览 60

obtainFreshBeanFactory()方法的调用问题

//AbstractApplicationContext类
protected ConfigurableListableBeanFactory obtainFreshBeanFactory() {
    		refreshBeanFactory(); //在父类中,真正实现在子类
    		return getBeanFactory();
    	}

}
		

上述代码refreshBeanFactory();方法调用的是子类的

//AbstractRefreshableApplicationContext 子类类中的方法
    	protected final void refreshBeanFactory() throws BeansException {
    		if (hasBeanFactory()) {
    			destroyBeans();
    			closeBeanFactory();
    		}
    		try {
    			DefaultListableBeanFactory beanFactory = createBeanFactory();
    			beanFactory.setSerializationId(getId());
    			customizeBeanFactory(beanFactory);
    			loadBeanDefinitions(beanFactory);
    			this.beanFactory = beanFactory;
    		}
    		catch (IOException ex) {
    			throw new ApplicationContextException("I/O error parsing bean definition source for " + getDisplayName(), ex);
    		}
    	}

子类继承父类,按理说,父类不应该调用子类的方法呀?

为什么会出现父类调用子类的情况?

  • 写回答

1条回答 默认 最新

  • a1767028198 2021-02-08 08:42
    关注

    人家父类直接给了一抽象方法在这,

    评论

报告相同问题?

悬赏问题

  • ¥15 CPU卡指令整合指令数据都在图片上
  • ¥15 火车票关联12306问题
  • ¥15 odoo17处理受托加工产品
  • ¥15 如何用MATLAB编码图三的积分
  • ¥15 圆孔衍射光强随孔径变化
  • ¥15 MacBook pro m3max上用vscode运行c语言没有反应
  • ¥15 ESP-PROG配置错误,ALL ONES
  • ¥15 结构功能耦合指标计算
  • ¥50 AI大模型精调(百度千帆、飞浆)
  • ¥15 非科班怎么跑代码?如何导数据和调参