Hard java spring

18. Difference between a @Configuration class and a normal class?

Sample answer: "A @Configuration class is proxied with a CGLIB subclass. So when one @Bean method calls another, it returns the same singleton, not a new object. @Bean methods in a normal class, or with proxyBeanMethods=false, run in 'lite' mode: a plain factory method call with no interception. Lite mode starts faster, but inter-bean calls create new instances."

Sources (1)
  1. Basic concepts: @Bean and @Configuration (full vs lite)