gpt4 book ai didi

java - 在 Java 方法中使用大括号会降低性能吗?

转载 作者:行者123 更新时间:2023-11-29 10:03:10 27 4
gpt4 key购买 nike

好像double-brace initialization increases overhead .

在方法内部使用大括号是否也会降低性能?

例如。

public class DoIReducePerformanceToo {

public void aMethod() {

{
// Is it a bad idea to use these?
}

}

}

我看过 Java 的 grammar似乎这被归类为一个 block :

Block: 
{ BlockStatements }

BlockStatements:
{ BlockStatement }

BlockStatement:
LocalVariableDeclarationStatement
ClassOrInterfaceDeclaration
[Identifier :] Statement

但我不确定语法双括号初始化落在何处。

我的问题:在方法中使用 block 语句会降低 Java 的性能吗?这些 block 是否与双括号初始化具有相同的性质?

编辑:

内部类实例化是:

ClassCreatorRest: Arguments [ClassBody]

ClassBody:
{ { ClassBodyDeclaration } }

最佳答案

双括号初始化技巧与普通作用域无关

相反,它会创建一个匿名类来继承您初始化的类型,并在初始化 block (这是构造函数的语法糖)中运行您的代码。

这个额外的类有开销。

关于java - 在 Java 方法中使用大括号会降低性能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17558977/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com