java OOP设计:避免状态并保持依赖注入
我有一个类需要初始化,然后才能开始工作。然而,我不想在我的对象中创建它,我希望它被注入——所以我需要同时拥有init()和run()
然而,这会产生一个问题——对象现在有状态,我正试图避免它。有没有一种设计模式可以克服这种情况
你可以在下面搜索框中键入要查询的问题!
我有一个类需要初始化,然后才能开始工作。然而,我不想在我的对象中创建它,我希望它被注入——所以我需要同时拥有init()和run()
然而,这会产生一个问题——对象现在有状态,我正试图避免它。有没有一种设计模式可以克服这种情况
# 1 楼答案
在本例中,听起来您应该将依赖项作为构造函数参数提供。这增加了附加
final
关键字的安全性,因此可以确保不再设置它# 2 楼答案
依赖注入: 依赖注入只是将逻辑实现传递到类中的一个花哨术语。依赖注入最基本的形式是
constructor
。只需将不想在类中的任何对象的实例作为参数传递给构造函数建筑类: 确保类完全构造并初始化的一个好方法是
FactoryMethod
模式。创建一个static MyClass create();
方法,并使MyClass
构造函数private
初始化类,并确保它在传递之前有效