Spring @Configuration注解

在Spring中使用@configuration注解进行bean声明时候遇到一个疑惑:
//这是一个父类

public class Parent {

public Parent() {
    System.out.println("parent...");
}

}

//子类继承父类

public class Son extends Parent{

public Son() {
    super();
    System.out.println("son...");
}

}

//进行配置

@Configuration
public class AnnotationConfig {

@Bean
public Son son(){
    return new Son();
}

    @Bean
public Parent parent(){
    return new Parent();
}   

}
在单元测试用中进行使用:

ApplicationContext annotationContext = new AnnotationConfigApplicationContext("com.jerry");

运行的结果是:
parent...
parent...
son...
为什么不是:
parent...
son...
parent...
另外,如果在Parent类加上@Scope("protoptype")注解,结果又变成:
parent init...
son...

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^