Java初始化方法类与容器详解

迷茫
풀어 주다: 2017-03-26 15:53:42
원래의
1870명이 탐색했습니다.

Java初始化方法:类、容器

初始化类(非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) ;

初始化容器:

集合框架中(collections, 如list, map, set等)原始方法:

Set myset = new HashSet(); myset.add("aa"); myset.add("bb"); myset.add("cc"); myset.add("dd"); domethod(myset);
로그인 후 복사

静态初始的方法:

private static final Set myset = new HashSet(); static { myset.add("aa"); myset.add("bb"); myset.add("cc"); myset.add("dd"); }
로그인 후 복사

双括弧语法(double-brace syntax)建立并初始化一个新的集合:

private static final Set myset = new HashSet() {{ add("aa"); add("bb"); add("cc"); add("dd"); }};
로그인 후 복사
doMethod(new HashSet() {{ add("aa"); add("bb"); add("cc"); add("dd"); }});
로그인 후 복사

第一层括弧实际是定义了一个内部匿名类(Anonymous Inner Class);

第二层括弧实际上是一个实例初始化块(instance initializer block),这个块在内部匿名类构造时被执行。

위 내용은 Java初始化方法类与容器详解의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!