Java Language Specification 24 / Chapter 6
- Chapter 6. Names
- §6.1 . Declarations
- §6.2 . Names and Identifiers
- §6.3 . Scope of a Declaration
- §6.3.1 . Scope for Pattern Variables in Expressions
- §6.3.1.1 . Conditional-And Operator &&
- §6.3.1.2 . Conditional-Or Operator ||
- §6.3.1.3 . Logical Complement Operator !
- §6.3.1.4 . Conditional Operator ? :
- §6.3.1.5 . Pattern Match Operator instanceof
- §6.3.1.6 . switch Expressions
- §6.3.1.7 . Parenthesized Expressions
- §6.3.2 . Scope for Pattern Variables in Statements
- §6.3.2.1 . Blocks
- §6.3.2.2 . if Statements
- §6.3.2.3 . while Statements
- §6.3.2.4 . do Statements
- §6.3.2.5 . for Statements
- §6.3.2.6 . switch Statements
- §6.3.2.7 . Labeled Statements
- §6.3.3 . Scope for Pattern Variables in case Labels
- §6.4 . Shadowing and Obscuring
- §6.4.1 . Shadowing
- §6.4.2 . Obscuring
- §6.5 . Determining the Meaning of a Name
- §6.5.1 . Syntactic Classification of a Name According to Context
- §6.5.2 . Reclassification of Contextually Ambiguous Names
- §6.5.3 . Meaning of Module Names and Package Names
- §6.5.3.1 . Simple Package Names
- §6.5.3.2 . Qualified Package Names
- §6.5.4 . Meaning of PackageOrTypeNames
- §6.5.4.1 . Simple PackageOrTypeNames
- §6.5.4.2 . Qualified PackageOrTypeNames
- §6.5.5 . Meaning of Type Names
- §6.5.5.1 . Simple Type Names
- §6.5.5.2 . Qualified Type Names
- §6.5.6 . Meaning of Expression Names
- §6.5.6.1 . Simple Expression Names
- §6.5.6.2 . Qualified Expression Names
- §6.5.7 . Meaning of Method Names
- §6.5.7.1 . Simple Method Names
- §6.6 . Access Control
- §6.6.1 . Determining Accessibility
- §6.6.2 . Details on protected Access
- §6.6.2.1 . Access to a protected Member
- §6.6.2.2 . Access to a protected Constructor
- §6.7 . Fully Qualified Names and Canonical Names