Java Spring Boot如何将bean自动连接到另一个类,而不将访问器方法连接到私有属性?

Java Spring Boot如何将bean自动连接到另一个类,而不将访问器方法连接到私有属性?,java,spring,Java,Spring,我刚刚开始学习Spring框架,我只是好奇Spring如何将一个bean自动连接到另一个没有setter方法的bean的私有变量。例如,我有一个DependentBean,它依赖于DependedBean @Component public class DependentBean { @Autowired private DependedBean dependedBean; //this class has no "setDependedBean" setter method..

我刚刚开始学习Spring框架,我只是好奇Spring如何将一个bean自动连接到另一个没有setter方法的bean的私有变量。例如,我有一个DependentBean,它依赖于DependedBean

@Component
public class DependentBean {
    @Autowired
    private DependedBean dependedBean; //this class has no "setDependedBean" setter method..
}
@Component
public class DependedBean{
     ...
}
对于DependedBean

@Component
public class DependentBean {
    @Autowired
    private DependedBean dependedBean; //this class has no "setDependedBean" setter method..
}
@Component
public class DependedBean{
     ...
}

当spring启动应用程序启动时,它可以设置DependentBean的DependendBean,即使DependentBean对象没有用于设置其DependendBean属性的setter方法。春天是怎么做到的?我只是好奇…

思考。许多依赖注入框架使用反射在运行时处理类并修改它们的行为


Class#getDeclaredFields()
返回类中所有声明字段的数组(由
Field
API包装),包括私有字段<代码>字段API允许您检查注释(
isAnnotationPresent
getAnnotation
getAnnotations
)并设置其当前值(
set(Object,Object)
)。

<。许多依赖注入框架使用反射在运行时处理类并修改它们的行为


Class#getDeclaredFields()
返回类中所有声明字段的数组(由
Field
API包装),包括私有字段
Field
API允许您检查注释(
isAnnotationPresent
getAnnotation
getAnnotations
)并设置其当前值(
set(Object,Object)
)。

在Java中,您可以使用反射来访问类的私有字段。有关如何实现的更多详细信息,请参阅。

在Java中,您可以使用反射来访问类的私有字段。请参阅以了解有关如何执行此操作的更多详细信息。

您的措辞很奇怪-
private
是访问修饰符,
setDependendBean
是访问修饰符方法或setter。抱歉,我将编辑问题…您的措辞很奇怪-
private
是访问修饰符,
setDependendBean
是访问器方法或setter。对不起,我将编辑问题。。。