如果一个类用@Service或@Component,那么只需要用@PostConstruct修饰某个方法,该方法能在类实例化的过程中自动执行,相当于类的构造函数。同时,具备了构造函数不具备的功能。
@Component class Test{ @PostConstruct public void sayHello(){ System.out.println("Hello!"); } }
但是需要注意:
子类实例化过程中会调用父类中的@PostConstruct方法。
@Component class TestChild extends Test{ @PostConstruct public void sayBye(){ System.out.println("Bye!"); } }
启动项目,输出如下:
Hello!
Bye!