我对以下 Java 语句感到困惑:
ArtClass artClass0 = new ArtClass();
int int3 = 73;
boolean boolean0 = artClass0.foo(int3);
第一条语句称为构造函数语句
吗?对于第二个和第三个语句,它们都被视为声明语句吗?如果是这样,我该如何区分它们?当我在论文中撰写这两个陈述时,我需要区分这两个陈述。
最佳答案
它们都是Local Variable Declaration Statements ,可以简单地写为
VariableDeclaratorId [= VariableInitializer]
我会给你the JLS中使用的确切术语。命名nonterminals 。下面提到的任何非终结符都可以在规范中找到。
ArtClass artClass0 = new ArtClass();
是
[UnannReferenceType [UnannClassOrInterfaceType]] Identifier
= [Primary [PrimaryNoNewArray [ClassInstanceCreationExpression]]];
<小时/>
int int3 = 73;
是
[UnannPrimitiveType [NumericType [IntegralType [int]]]] Identifier
= [Literal [IntegerLiteral [DecimalIntegerLiteral]]];
<小时/>
boolean boolean0 = artClass0.foo(int3);
是
[UnannPrimitiveType [boolean]] Identifier
= [Primary [PrimaryNoNewArray [MethodInvocation]]];
关于java - "constructor statement"和 "declaration statement"是描述这些语句的正确名称吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57694794/