Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 抽象类的静态映射在我的Spring组件中为空_Java_Spring - Fatal编程技术网

Java 抽象类的静态映射在我的Spring组件中为空

Java 抽象类的静态映射在我的Spring组件中为空,java,spring,Java,Spring,我有一个带有一些简单映射的抽象组件。然后我有ManagerBean,它是Springbean,我需要AbstractComponent.myMap,但它是空的 抽象组件 public class AbstractComponent { public static Map<TypeA, SomeFunctionAPI> myMap = new HashMap<>(); static { myMap.put(TypeA.X, new Some

我有一个带有一些简单映射的抽象组件。然后我有ManagerBean,它是Springbean,我需要AbstractComponent.myMap,但它是空的

抽象组件

public class AbstractComponent {
   public static Map<TypeA, SomeFunctionAPI> myMap = new HashMap<>();
      static {
        myMap.put(TypeA.X, new SomeFunctionAPI(){}); //anonymous implementation depending on TypeA
        myMap.put(TypeA.F, new SomeFunctionAPI(){});
     }
弹簧:

<bean id="managerBean" class="myPckage.ManagerBean"> 


XML only,请注意,只有ManagerBean是springBean。AbstractComponent只是一个抽象类,不在SpringContex中。伙计们,我想你们误解了我的问题。我不想注入任何东西,也不想有任何依赖性。为什么我不能只使用AbstractComponent.myMap而不创建AbstractComponent类型的bean,仅仅是纯Java?不是所有的东西都必须是春豆。。我的问题是为什么这不起作用。试着将
myMap
声明为
final
。这段代码应该可以工作,但我认为在代码中的某个地方,您只使用null.XML重新初始化了这个变量,请注意,只有ManagerBean是springBean。AbstractComponent只是一个抽象类,不在SpringContex中。伙计们,我想你们误解了我的问题。我不想注入任何东西,也不想有任何依赖性。为什么我不能只使用AbstractComponent.myMap而不创建AbstractComponent类型的bean,仅仅是纯Java?不是所有的东西都必须是春豆。。我的问题是为什么这不起作用。请尝试将
myMap
声明为
final
。这段代码应该可以工作,但我认为在代码中的某个地方,您可以使用null重新初始化此变量。
<bean id="managerBean" class="myPckage.ManagerBean">