Primary:
PrimaryNoNewArray
ArrayCreationExpression
PrimaryNoNewArray:
Literalthis
(
Expression)
ClassInstanceCreationExpression
FieldAccess
MethodInvocation
ArrayAccess
ClassInstanceCreationExpression:new
ClassType(
ArgumentList![]()
)
ArgumentList:
Expression
ArgumentList,
Expression
ArrayCreationExpression:new
PrimitiveType DimExprs Dims![]()
new
ClassOrInterfaceType DimExprs Dims![]()
DimExprs:
DimExpr
DimExprs DimExpr
DimExpr:[
Expression]
Dims:[
]
Dims[
]
FieldAccess:
Primary.
Identifiersuper
.
Identifier
MethodInvocation:
Name(
ArgumentList![]()
)
Primary.
Identifier(
ArgumentList![]()
)
super
.
Identifier(
ArgumentList![]()
)
ArrayAccess:
Name[
Expression]
PrimaryNoNewArray[
Expression]
PostfixExpression:
Primary
Name
PostIncrementExpression
PostDecrementExpression
PostIncrementExpression:
PostfixExpression++
PostDecrementExpression:
PostfixExpression--
UnaryExpression:
PreIncrementExpression
PreDecrementExpression+
UnaryExpression-
UnaryExpression
UnaryExpressionNotPlusMinus
PreIncrementExpression:++
UnaryExpression
PreDecrementExpression:--
UnaryExpression
UnaryExpressionNotPlusMinus:
PostfixExpression~
UnaryExpression!
UnaryExpression
CastExpression
CastExpression:(
PrimitiveType Dims![]()
)
UnaryExpression(
Expression)
UnaryExpressionNotPlusMinus(
Name Dims)
UnaryExpressionNotPlusMinus
MultiplicativeExpression:
UnaryExpression
MultiplicativeExpression*
UnaryExpression
MultiplicativeExpression/
UnaryExpression
MultiplicativeExpression%
UnaryExpression
AdditiveExpression:
MultiplicativeExpression
AdditiveExpression+
MultiplicativeExpression
AdditiveExpression-
MultiplicativeExpression
ShiftExpression:
AdditiveExpression
ShiftExpression<<
AdditiveExpression
ShiftExpression>>
AdditiveExpression
ShiftExpression>>>
AdditiveExpression
RelationalExpression:
ShiftExpression
RelationalExpression<
ShiftExpression
RelationalExpression>
ShiftExpression
RelationalExpression<=
ShiftExpression
RelationalExpression>=
ShiftExpression
RelationalExpressioninstanceof
ReferenceType
EqualityExpression:
RelationalExpression
EqualityExpression==
RelationalExpression
EqualityExpression!=
RelationalExpression
AndExpression:
EqualityExpression
AndExpression&
EqualityExpression
ExclusiveOrExpression:
AndExpression
ExclusiveOrExpression^
AndExpression
InclusiveOrExpression:
ExclusiveOrExpression
InclusiveOrExpression|
ExclusiveOrExpression
ConditionalAndExpression:
InclusiveOrExpression
ConditionalAndExpression&&
InclusiveOrExpression
ConditionalOrExpression:
ConditionalAndExpression
ConditionalOrExpression||
ConditionalAndExpression
ConditionalExpression:
ConditionalOrExpression
ConditionalOrExpression?
Expression:
ConditionalExpression
AssignmentExpression:
ConditionalExpression
Assignment
Assignment:
LeftHandSide AssignmentOperator AssignmentExpression
LeftHandSide:
Name
FieldAccess
ArrayAccess
AssignmentOperator: one of= *= /= %= += -= <<= >>= >>>= &= ^= |=
Expression:
AssignmentExpression
ConstantExpression:
Expression