调用Parent类PostConstruct方法而不是子类

时间:2015-05-26 10:52:36

标签: java spring dependency-injection postconstruct

我有一个特殊的要求来调用Parent类PostContruct而不是子类

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的服务注释子类被加载,使用PostContruct注释调用子类的测试方法,但是我们的要求是调用父类来自我们可以调用的类孩子的班级考试方法。

有没有办法实现同样的目标,我们不想引入新方法或改变方法逻辑

1 个答案:

答案 0 :(得分:1)

如果您不需要孩子的特定行为,则无法覆盖它。如果你在child中没有textMethod,那么可能会使用父方法。

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