Java 调用父类后构造方法而不是子类

Java 调用父类后构造方法而不是子类,java,spring,dependency-injection,postconstruct,Java,Spring,Dependency Injection,Postconstruct,我有一个特殊的要求,即调用父类postcontract而不是子类 import javax.annotation.PostConstruct; public class Parent { public Parent(){ System.out.println("In parent contructor"); } @PostConstruct public void test(){ System.out.println("In

我有一个特殊的要求,即调用父类postcontract而不是子类

import javax.annotation.PostConstruct;

public class Parent {

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

    @PostConstruct
    public void test(){
        System.out.println("In parent post construct");
        // call the child's class method 
        this.test()
    }
}


import org.springframework.stereotype.Service;

    @Service("Child")
    public class Child extends Parent{

        public void test(){
            System.out.println("In child post construct method");
        }
    }
因此,使用Spring的服务注释子类被加载,使用PostContractAnnotation调用子类的类测试方法,但我们的要求是调用父类,从父类调用子类的类测试方法


有没有办法达到同样的效果,我们不想引入新方法或改变方法逻辑

如果你不需要孩子的特定行为,你就不能简单地忽略它。如果在child中没有textMethod,则可能会使用父级的方法


如果要向孩子添加特定的行为,请添加@Override注释,并在需要时调用super.testMethod()。

Ehrm。如果不重写该方法,按照此处发布的操作将导致堆栈溢出。创建一个从
testMethod
en调用的方法,实现该方法,但不要重写方法。在spring框架本身的几个类中也是如此。