Java初期化メソッドのクラスとコンテナの詳細説明

迷茫
リリース: 2017-03-26 15:53:42
オリジナル
1970 人が閲覧しました

Java 初期化メソッド: クラス、コンテナ

初期化クラス (non-final):

Struts2 の DefaultActionMapper クラス内:

public DefaultActionMapper() {
    prefixTrie = new PrefixTrie() { {
        put(METHOD_PREFIX, new ParameterAction() {
            public void execute(String key, ActionMapping mapping) {
                if (allowDynamicMethodCalls) {
                    mapping.setMethod(key.substring( METHOD_PREFIX.length()));
                }
            }
         }); //。。。。
     }};
}
ログイン後にコピー

put は PrefixTrie のメソッドです: public void put(String prefix, Object value);

初期化コンテナ:

コレクションフレームワークの独自メソッド(リスト、マップ、セットなどのコレクション):

Set<String> myset = new HashSet<String>();
myset.add("aa");
myset.add("bb");
myset.add("cc");
myset.add("dd");
domethod(myset);
ログイン後にコピー

静的初期化メソッド:

private static final Set<String> myset = new HashSet<String>();
static { myset.add("aa");
    myset.add("bb");
    myset.add("cc");
    myset.add("dd");
}
ログイン後にコピー

二重中括弧構文(二重中括弧構文)は、新しいコレクションを初期化します:

rrree
private static final Set<String> myset = new HashSet<String>() {{
    add("aa");
    add("bb");
    add("cc");
    add("dd");
}};
ログイン後にコピー

最初のレベルのかっこは、実際には 内部匿名クラス(Anonymous Inner Class) を定義します。

2 番目のレベルのかっこは、実際には インスタンス初期化ブロック (インスタンス初期化ブロック) です。 )、内部匿名クラスが構築されると、このブロックは Executed になります。

以上がJava初期化メソッドのクラスとコンテナの詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!