用反射调用私有方法,mapper没有注入进去的问题

今天跑单元测试遇到一个问题。
用反射调用私有方法,私有方法里面涉及调用数据库 mapper没有注入进去的 报了空指针
类似https://www.jianshu.com/p/4b3f55e76637
这个文章的情况
但是我对他解释的原因不是很认同
因为把private改为public后 就没有报空指针
个人猜测是因为Spring 无法得知私有方法的细节,也就无法注入,请大佬讲一下深入一点的原理 ,或者源码

代码类似于

Class AImpl{
        @Autowried
        private Amapper amapper

        priavte void f(){
                    amapper.select();
        }

}
Class Test{
    @Autowried
    private AImpl aImpl;

    public void test(){
        Method method = AImpl.class.getDeclaredMethod("f",null);
        method.setAccessible(true);
        method.invoke(aImpl,null);
    }


}

https://blog.csdn.net/yangsen159/article/details/87627300