Bean类的工厂方法应该是静态的,而工厂类中存在的Bean的工厂方法则应该是非静态的。
如果这一要求得不到满足,国际奥委会春季赛将破例。
我很清楚为什么我们需要bean的静态工厂方法,因为要使用方法实例化bean,它需要是静态的。
但是为什么我们需要一个工厂bean的非静态方法。
FactoryBean
是接口的名称,该接口声明方法getObject()
。任何接口的意义都与此相同:多态性。如果您要调用某个静态方法,那么获得FactoryBean
的实例有什么意义?
我也不清楚你所说的"如果这个要求没有得到满足,Spring会抛出异常"是什么意思。如果您声明了一个实现FactoryBean
的类,但没有实现其方法,则Java编译器会产生编译错误。