Primary:
PrimaryNoNewArray
ArrayCreationExpression
PrimaryNoNewArray:
Literal
this
(
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.
Identifier
super
.
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