不可见类有抽象父类,spring配置子类bean,注入父类,aop就可以切父类的方法

Posted tonggc1668

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了不可见类有抽象父类,spring配置子类bean,注入父类,aop就可以切父类的方法相关的知识,希望对你有一定的参考价值。

public class TestBeanChild {
    int b = 1;

    public TestBean createDefault() {
        return new TestBeanDefault();
    }
}
class TestBeanDefault extends TestBean{
     int  b=2;
}

包外面不能访问类TestBeanDefault 

public abstract class TestBean {
    private int a =0;
 public void doBean(){
     System.out.println("1321");
 }
}
<bean id="a" class="com.yundaex.wms.config.TestBeanChild"  />
     <bean id="b" class="com.yundaex.wms.config.TestBeanChild" factory-bean="a"  factory-method="createDefault" />
    

   <aop:config proxy-target-class="true">    
          <aop:aspect ref="ifmAspect">
             <aop:pointcut id="ifmAspectPointcut"   
                expression="execution( * com.yundaex.wms.config.TestBean.*(..))
                    "/>  
             <aop:around method="aroundMethod"  pointcut-ref="ifmAspectPointcut"/>
          </aop:aspect>
    </aop:config>
@Autowired
private TestBean dd;

dd为父类实例其实是子类的cglib的代理对象

 

以上是关于不可见类有抽象父类,spring配置子类bean,注入父类,aop就可以切父类的方法的主要内容,如果未能解决你的问题,请参考以下文章

如果父类有一个虚方法,子类重写了这个方法。那么子类到底有没有继承父类的虚方法??

什么是类的继承性?Java中子类和父类有什么关系?

接口和抽象类有什么区别

面向对象--多态虚方法重写抽象类接口

抽象类,抽象方法

抽象和虚方法细节