|
|
1
66
它叫 double curly brace initialization .(编辑:链接已删除, archived here ) 这意味着您正在创建一个匿名子类,而双括号中的代码基本上是一个构造函数。它通常用于向集合中添加内容,因为Java的语法用于创建本质上的集合常量,这有点尴尬。 所以你可以这样做:
而不是:
实际上我不喜欢这样,我更喜欢这样做:
因此,在这种情况下,它没有多大意义,但是它确实有地图,比如说,没有一个方便的助手。 |
|
|
2
11
“外部”大括号表示您正在创建匿名子类,第二个大括号是对象初始值设定项。初始值设定项在类的构造函数之前运行,但在任何构造函数之后运行
考虑这个类:
它可以改写为:
如果初始值设定项可以引发选中的异常,则所有构造函数都必须声明它们可以引发异常。 |
|
|
3
4
您正在创建 anonymous class 并使用 class Instance initialize R成语,如下:
|
|
|
4
1
如前所述, 双大括号初始化 是正确的。 它使用一种特定的技术 初始化实例成员 在Java中。这是在类定义中定义的一种简略方法,类定义是一个共享的代码块,当任何类构造函数被激活时,它都将运行。 我正在将链接添加到 official Java documentations 描述它以获得更广泛的主题观点。 从 documentation :
|
|
|
user29759326 · 如何返回递归函数中的最后一个值? 11 月前 |
|
|
malife89 · 将java中的字符串读取为正确的日期格式 11 月前 |
|
|
Tim · 在java中,有没有更快的方法将字节数组写入文件? 11 月前 |
|
pebble unit · 如何检查以前缀开头、以后缀结尾的属性(不是属性值) 11 月前 |
|
|
rudraraj · java中未声明最终变量 11 月前 |
|
|
Bala Ji · 以下BFS的实施效率如何? 11 月前 |