Next
The Java Language Specification
This document is a preliminary specification of the JavaTM language. Both the specification and the language are subject to change. When a feature that exists in both Java and ANSI C isn't explained fully in this specification, the feature should be assumed to work as it does in ANSI C. Send comments on the Java Language and specification to java@java.Sun.COM. See also http://java.sun.com/mail.html for a list of Java-related mailing lists.
Table of Contents
- 1 - Program Structure
-
- 2 - Lexical Issues
-
- 2.1 - Comments
-
- 2.2 - Identifiers
-
- 2.3 - Keywords
-
- 2.4 - Literals
-
- 2.4.1 - Integer Literals
-
- 2.4.2 - Floating Point Literals
-
- 2.4.3 - Boolean Literals
-
- 2.4.4 - Character Literals
-
- 2.4.5 - String Literals
-
- 2.5 - Operators and Miscellaneous Separators
-
- 3 - Types
-
- 3.1 - Numeric Types
-
- 3.1.1 - Integer Types
-
- 3.1.2 - Floating Point Types
-
- 3.1.3 - Character Types
-
- 3.2 - Boolean Types
-
- 3.3 - Arrays
-
- 3.3.1 - Array Detail
-
- 4 - Classes
-
- 4.1 - Casting Between Class Types
-
- 4.2 - Methods
-
- 4.2.1 - Instance Variables
-
- 4.2.2 - The this and super Variables
-
- 4.2.3 - Setting Local Variables
-
- 4.3 - Overriding Methods
-
- 4.4 - Overload Resolution
-
- 4.5 - Constructors
-
- 4.6 - Object Creation--the new Operator
-
- 4.6.1 - Garbage Collection
-
- 4.6.2 - Finalization
-
- 4.6.3 - The null Reference
-
- 4.7 - Static Methods, Variables, and Initializers
-
- 4.7.1 - Order of Declarations
-
- 4.7.2 - Order of Initialization
-
- 4.8 - Access Specifiers
-
- 4.9 - Variable Scoping Rules
-
- 4.10 - Modifiers
-
- 4.10.1 - Threadsafe Variables
-
- 4.10.2 - Transient Variables
-
- 4.10.3 - Final Classes, Methods, and Variables
-
- 4.10.4 - Native Methods
-
- 4.10.5 - Abstract Methods
-
- 4.10.6 - Synchronized Methods and Blocks
-
- 5 - Interfaces
-
- 5.1 - Interfaces as Types
-
- 5.2 - Methods in Interfaces
-
- 5.3 - Variables in Interfaces
-
- 5.4 - Combining Interfaces
-
- 6 - Packages
-
- 6.1 - Specifying a Compilation Unit's Package
-
- 6.2 - Using Classes and Interfaces from Other Packages
-
- 7 - Expressions
-
- 7.1 - Operators
-
- 7.1.1 - Operators on Integers
-
- 7.1.2 - Operators on Boolean Values
-
- 7.1.3 - Operators on Floating Point Values
-
- 7.1.4 - Operators on Arrays
-
- 7.1.5 - Operators on Strings
-
- 7.1.6 - Operators on Objects
-
- 7.2 - Casts and Conversions
-
- 8 - Statements
-
- 8.1 - Declarations
-
- 8.2 - Expressions
-
- 8.3 - Control Flow
-
- 8.4 - Exceptions
-
- 8.4.1 - The finally Statement
-
- 8.4.2 - Runtime Exceptions
-
- A - Appendix: Floating Point
-
- A.1 - Special Values
-
- A.2 - Binary Format Conversion
-
- A.3 - Ordering
-
- A.4 - Summary of IEEE-754 Differences
-
- B - Appendix: Java Language Grammar
-
Next
Generated with CERN WebMaker