我正在查看Java文档,this示例让我感到惊讶:
int height = new Rectangle().height;`
我一直认为在这种情况下你必须使用括号:
int height = (new Rectangle()).height;
因为operator precedence table显示.
运算符的前置值高于new
运算符,如果是,那么为什么这行代码执行如下:
int height = (new Rectangle()).height;
而不是像这样执行:
int height = new (Rectangle().height);