0

私はSpring開発に不慣れで、少し調べているところです.コントローラーでハードコードされたHashMapを使用すると、エラーが発生します

//all corresponding package imports
@Controller
public class ContactController {

    Map<String, String> contactMap = new HashMap<String, String>();

    contactMap.put("name", "John");
    contactMap.put("lastname", "Lennon");
    contactMap.put("genres", "Rock, Pop");

}

そして、静的ブロックの下に置くと、正常に動作します

@Controller
public class ContactController {

private static Map<String, String> contactMap = new HashMap<String, String>();
static {
    contactMap.put("name", "John");
    contactMap.put("lastname", "Lennon");
    contactMap.put("genres", "Rock, Pop");
}

}

この背後にあるロジックは何ですか?

4

1 に答える 1

1

これは春のせいではありません。メソッドまたはコンストラクター内にない場合、Java クラスのインスタンス メソッドにアクセスできません。

于 2013-06-07T00:44:34.870 に答える