List of Java keywords
Encyclopedia
In the Java programming language
, a keyword is one of 50 reserved word
s which have a predefined meaning in the language; because of this, programmers cannot use keywords as names for variables
, methods
, classes
, or as any other identifier
. Due to their special functions in the language, most integrated development environment
s for Java use syntax highlighting
to display keywords in a different color for easy identification.
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...
, a keyword is one of 50 reserved word
Reserved word
Reserved words are one type of grammatical construct in programming languages. These words have special meaning within the language and are predefined in the language’s formal specifications...
s which have a predefined meaning in the language; because of this, programmers cannot use keywords as names for variables
Variable (programming)
In computer programming, a variable is a symbolic name given to some known or unknown quantity or information, for the purpose of allowing the name to be used independently of the information it represents...
, methods
Method (computer science)
In object-oriented programming, a method is a subroutine associated with a class. Methods define the behavior to be exhibited by instances of the associated class at program run time...
, classes
Class (computer science)
In object-oriented programming, a class is a construct that is used as a blueprint to create instances of itself – referred to as class instances, class objects, instance objects or simply objects. A class defines constituent members which enable these class instances to have state and behavior...
, or as any other identifier
Identifier
An identifier is a name that identifies either a unique object or a unique class of objects, where the "object" or class may be an idea, physical [countable] object , or physical [noncountable] substance...
. Due to their special functions in the language, most integrated development environment
Integrated development environment
An integrated development environment is a software application that provides comprehensive facilities to computer programmers for software development...
s for Java use syntax highlighting
Syntax highlighting
Syntax highlighting is a feature of some text editors that display text—especially source code—in different colors and fonts according to the category of terms. This feature eases writing in a structured language such as a programming language or a markup language as both structures and...
to display keywords in a different color for easy identification.
List
The following is a list of the keywords in Java, along with brief descriptions of their functions:abstract
- The
abstract
keyword is used to declare a class or method to be abstractAbstract typeIn programming languages, an abstract type is a type in a nominative type system which cannot be instantiated. An abstract type may have no implementation, or an incomplete implementation...
. An abstract method has no implementation; all classes containing abstract methods must themselves be abstract, although not all abstract classes have abstract methods. ObjectObject (computer science)In computer science, an object is any entity that can be manipulated by the commands of a programming language, such as a value, variable, function, or data structure...
s of a class which is abstract cannot be instantiatedObject (computer science)In computer science, an object is any entity that can be manipulated by the commands of a programming language, such as a value, variable, function, or data structure...
, but can be extendedInheritance (computer science)In object-oriented programming , inheritance is a way to reuse code of existing objects, establish a subtype from an existing object, or both, depending upon programming language support...
by other classes. All subclasses of an abstract class must either provide implementations for all abstract methods, or must also be abstract.
assertAssertion (computing)In computer programming, an assertion is a predicate placed in a program to indicate that the developer thinks that the predicate is always true at that place.For example, the following code contains two assertions:...
- The
assert
keyword, which was added in J2SE 1.4, is used to make an assertionAssertion (computing)In computer programming, an assertion is a predicate placed in a program to indicate that the developer thinks that the predicate is always true at that place.For example, the following code contains two assertions:...
—a statement which the programmer believes is always true at that point in the program. If assertions are enabled when the program is run and it turns out that an assertion is false, an is thrown and the program terminates. This keyword is intended to aid in debuggingDebuggingDebugging is a methodical process of finding and reducing the number of bugs, or defects, in a computer program or a piece of electronic hardware, thus making it behave as expected. Debugging tends to be harder when various subsystems are tightly coupled, as changes in one may cause bugs to emerge...
.
booleanBoolean datatypeIn computer science, the Boolean or logical data type is a data type, having two values , intended to represent the truth values of logic and Boolean algebra...
- The
boolean
keyword is used to declare a fieldField (computer science)In computer science, data that has several parts can be divided into fields. Relational databases arrange data as sets of database records, also called rows. Each record consists of several fields; the fields of all records form the columns....
that can store a boolean valueBoolean datatypeIn computer science, the Boolean or logical data type is a data type, having two values , intended to represent the truth values of logic and Boolean algebra...
; that is, eithertrue
orfalse
. This keyword is also used to declare that a method returns a value of typeboolean
.
breakSwitch statementIn computer programming, a switch, case, select or inspect statement is a type of selection control mechanism that exists in most imperative programming languages such as Pascal, Ada, C/C++, C#, Java, and so on. It is also included in several other types of languages...
- Used to resume program execution at the statement immediately following the current enclosing block or statement. If followed by a labelLabel (programming language)A label in a programming language is a sequence of characters that identifies a location within source code. In most languages labels take the form of an identifier, often followed by a punctuation character . In many high level programming languages the purpose of a label is to act as the...
, the program resumes execution at the statement immediately following the enclosing labeled statement or block.
byteByteThe byte is a unit of digital information in computing and telecommunications that most commonly consists of eight bits. Historically, a byte was the number of bits used to encode a single character of text in a computer and for this reason it is the basic addressable element in many computer...
- The
byte
keyword is used to declare a field that can store an 8-bitBitA bit is the basic unit of information in computing and telecommunications; it is the amount of information stored by a digital device or other physical system that exists in one of two possible distinct states...
signed two's complementTwo's complementThe two's complement of a binary number is defined as the value obtained by subtracting the number from a large power of two...
integer. This keyword is also used to declare that a method returns a value of typebyte
.
caseSwitch statementIn computer programming, a switch, case, select or inspect statement is a type of selection control mechanism that exists in most imperative programming languages such as Pascal, Ada, C/C++, C#, Java, and so on. It is also included in several other types of languages...
- The
case
keyword is used to create individual cases in a switch statementSwitch statementIn computer programming, a switch, case, select or inspect statement is a type of selection control mechanism that exists in most imperative programming languages such as Pascal, Ada, C/C++, C#, Java, and so on. It is also included in several other types of languages...
; seeswitch
.
catch
- Defines an exception handler—a group of statements that are executed if an exception is thrown in the block defined by a preceding
try
keyword. The code is executed only if the class of the thrown exception is assignment compatible with the exception class declared by thecatch
clause.
charCharacter (computing)In computer and machine-based telecommunications terminology, a character is a unit of information that roughly corresponds to a grapheme, grapheme-like unit, or symbol, such as in an alphabet or syllabary in the written form of a natural language....
- The
char
keyword is used to declare a field that can store a 16-bit UnicodeUnicodeUnicode is a computing industry standard for the consistent encoding, representation and handling of text expressed in most of the world's writing systems...
character. This keyword is also used to declare that a method returns a value of typechar
.
class
- A type that defines the implementation of a particular kind of object. A class definition defines instanceObject (computer science)In computer science, an object is any entity that can be manipulated by the commands of a programming language, such as a value, variable, function, or data structure...
and class fields, methodsMethod (computer science)In object-oriented programming, a method is a subroutine associated with a class. Methods define the behavior to be exhibited by instances of the associated class at program run time...
, and inner classInner classIn object-oriented programming , an inner class or nested class is a class declared entirely within the body of another class or interface. It is distinguished from a subclass.-Overview:...
es as well as specifying the interfacesInterface (computer science)In the field of computer science, an interface is a tool and concept that refers to a point of interaction between components, and is applicable at the level of both hardware and software...
the class implements and the immediate superclass of the class. If the superclass is not explicitly specified, the superclass is implicitly .
constConstant (programming)In computer programming, a constant is an identifier whose associated value cannot typically be altered by the program during its execution...
- Although reserved as a keyword in Java,
const
is not used and has no function.
continue
- Used to resume program execution at the end of the current loop body. If followed by a label,
continue
resumes execution at the end of the enclosing labeled loop body.
defaultSwitch statementIn computer programming, a switch, case, select or inspect statement is a type of selection control mechanism that exists in most imperative programming languages such as Pascal, Ada, C/C++, C#, Java, and so on. It is also included in several other types of languages...
- The
default
can optionally be used in a switch statementSwitch statementIn computer programming, a switch, case, select or inspect statement is a type of selection control mechanism that exists in most imperative programming languages such as Pascal, Ada, C/C++, C#, Java, and so on. It is also included in several other types of languages...
to label a block of statements to be executed if nocase
matches the specified value; seeswitch
.
doDo while loopIn most computer programming languages, a do while loop, sometimes just called a do loop, is a control flow statement that allows code to be executed repeatedly based on a given Boolean condition. Note though that unlike most languages, Fortran's do loop is actually analogous to the for loop.The...
- The
do
keyword is used in conjunction withwhile
to create a do-while loop, which executes a block of statements associated with the loop and then tests a boolean expression associated with thewhile
. If the expression evaluates totrue
, the block is executed again; this continues until the expression evaluates tofalse
.
doubleDouble precisionIn computing, double precision is a computer number format that occupies two adjacent storage locations in computer memory. A double-precision number, sometimes simply called a double, may be defined to be an integer, fixed point, or floating point .Modern computers with 32-bit storage locations...
- The
double
keyword is used to declare a field that can hold a 64-bit double precisionDouble precisionIn computing, double precision is a computer number format that occupies two adjacent storage locations in computer memory. A double-precision number, sometimes simply called a double, may be defined to be an integer, fixed point, or floating point .Modern computers with 32-bit storage locations...
IEEE 754 floating-point number. This keyword is also used to declare that a method returns a value of typedouble
.
elseConditional statementIn computer science, conditional statements, conditional expressions and conditional constructs are features of a programming language which perform different computations or actions depending on whether a programmer-specified boolean condition evaluates to true or false...
- The
else
keyword is used in conjunction withif
to create an if-else statement, which tests a boolean expressionBoolean expressionIn computer science, a Boolean expression is an expression in a programming language that produces a Boolean value when evaluated, i.e. one of true or false...
; if the expression evaluates totrue
, the block of statements associated with theif
are evaluated; if it evaluates tofalse
, the block of statements associated with theelse
are evaluated.
enumEnumerated typeIn computer programming, an enumerated type is a data type consisting of a set of named values called elements, members or enumerators of the type. The enumerator names are usually identifiers that behave as constants in the language...
(as of J2SE 5.0)
- A Java keyword used to declare an enumerated typeEnumerated typeIn computer programming, an enumerated type is a data type consisting of a set of named values called elements, members or enumerators of the type. The enumerator names are usually identifiers that behave as constants in the language...
. Enumerations extend the base class .
extendsInheritance (object-oriented programming)In object-oriented programming , inheritance is a way to reuse code of existing objects, establish a subtype from an existing object, or both, depending upon programming language support...
- Used in a class declaration to specify the superclass; used in an interface declaration to specify one or more superinterfaces. Class X extends class Y to add functionality, either by adding fields or methods to class Y, or by overriding methods of class Y. An interface Z extends one or more interfaces by adding methods. Class X is said to be a subclass of class Y; Interface Z is said to be a subinterface of the interfaces it extends.
- Also used to specify an upper bound on a type parameter in Generics.
finalFinal (Java)In the Java programming language, the final keyword is used in several different contexts to define an entity which cannot later be changed.- Final classes :...
- Define an entity once that cannot be changed nor derived from later. More specifically: a final class cannot be subclassed, a final method cannot be overridden, and a final variable can occur at most once as a left-hand expression. All methods in a final class are implicitly
final
.
finally
- Used to define a block of statements for a block defined previously by the
try
keyword. Thefinally
block is executed after execution exits thetry
block and any associatedcatch
clauses regardless of whether an exception was thrown or caught, or execution left method in the middle of thetry
orcatch
blocks using thereturn
keyword.
float
- The
float
keyword is used to declare a field that can hold a 32-bit single precision IEEE 754 floating-point number. This keyword is also used to declare that a method returns a value of typefloat
.
forFor loopIn computer science a for loop is a programming language statement which allows code to be repeatedly executed. A for loop is classified as an iteration statement....
- The
for
keyword is used to create a for loopFor loopIn computer science a for loop is a programming language statement which allows code to be repeatedly executed. A for loop is classified as an iteration statement....
, which specifies a variable initialization, a boolean expressionBoolean expressionIn computer science, a Boolean expression is an expression in a programming language that produces a Boolean value when evaluated, i.e. one of true or false...
, and an incrementation. The variable initialization is performed first, and then the boolean expression is evaluated. If the expression evaluates totrue
, the block of statements associated with the loop are executed, and then the incrementation is performed. The boolean expression is then evaluated again; this continues until the expression evaluates tofalse
.
- As of J2SE 5.0, the
for
keyword can also be used to create a so-called "enhanced for loopForeachFor each is a computer language idiom for traversing items in a collection. Foreach is usually used in place of a standard for statement. Unlike other for loop constructs, however, foreach loops usually maintain no explicit counter: they essentially say "do this to everything in this set",...
", which specifies an arrayArray data typeIn computer science, an array type is a data type that is meant to describe a collection of elements , each selected by one or more indices that can be computed at run time by the program. Such a collection is usually called an array variable, array value, or simply array...
or object; each iteration of the loop executes the associated block of statements using a different element in the array orIterable
.
gotoGotogoto is a statement found in many computer programming languages. It is a combination of the English words go and to. It performs a one-way transfer of control to another line of code; in contrast a function call normally returns control...
- Although reserved as a keyword in Java,
goto
is not used and has no function.
if
- The
if
keyword is used to create an if statement, which tests a boolean expressionBoolean expressionIn computer science, a Boolean expression is an expression in a programming language that produces a Boolean value when evaluated, i.e. one of true or false...
; if the expression evaluates totrue
, the block of statements associated with the if statement is executed. This keyword can also be used to create an if-else statement; seeelse
.
implements
- Included in a class declaration to specify one or more interfacesInterface (Java)An interface in the Java programming language is an abstract type that is used to specify an interface that classes must implement. Interfaces are declared using the interface keyword, and may only contain method signature and constant declarations...
that are implemented by the current class. A class inherits the types and abstract methods declared by the interfaces.
import
- Used at the beginning of a source file to specify classes or entire Java packageJava packageA Java package is a mechanism for organizing Java classes into namespaces similar to the modules of Modula. Java packages can be stored in compressed files called JAR files, allowing classes to download faster as a group rather than one at a time...
s to be referred to later without including their package names in the reference. Since J2SE 5.0,import
statements can importstatic
members of a class.
instanceof
- A binary operatorOperator (programming)Programming languages typically support a set of operators: operations which differ from the language's functions in calling syntax and/or argument passing mode. Common examples that differ by syntax are mathematical arithmetic operations, e.g...
that takes an object reference as its first operand and a class or interface as its second operand and produces a boolean result. Theinstanceof
operator evaluates to true if and only if the runtime type of the object is assignment compatible with the class or interface.
intInteger (computer science)In computer science, an integer is a datum of integral data type, a data type which represents some finite subset of the mathematical integers. Integral data types may be of different sizes and may or may not be allowed to contain negative values....
- The
int
keyword is used to declare a field that can hold a 32-bit signed two's complement integer. This keyword is also used to declare that a method returns a value of typeint
.
interfaceInterface (Java)An interface in the Java programming language is an abstract type that is used to specify an interface that classes must implement. Interfaces are declared using the interface keyword, and may only contain method signature and constant declarations...
- Used to declare a special type of class that only contains abstract methods, constant (
static final
) fields andstatic
interfaces. It can later be implemented by classes that declare the interface with theimplements
keyword.
long
- The
long
keyword is used to declare a field that can hold a 64-bit signed two's complement integer. This keyword is also used to declare that a method returns a value of typelong
.
native
- Used in method declarations to specify that the method is not implemented in the same Java source file, but rather in another language.
new
- Used to create an instance of a class or array/an object.
packageJava packageA Java package is a mechanism for organizing Java classes into namespaces similar to the modules of Modula. Java packages can be stored in compressed files called JAR files, allowing classes to download faster as a group rather than one at a time...
- A group of types. Packages are declared with the
package
keyword.
private
- The
private
keyword is used in the declaration of a method, field, or inner class; private members can only be accessed by other members of their own class.
protected
- The
protected
keyword is used in the declaration of a method, field, or inner class; protected members can only be accessed by members of their own class, that class's subclassesInheritance (object-oriented programming)In object-oriented programming , inheritance is a way to reuse code of existing objects, establish a subtype from an existing object, or both, depending upon programming language support...
or classes from the same packageJava packageA Java package is a mechanism for organizing Java classes into namespaces similar to the modules of Modula. Java packages can be stored in compressed files called JAR files, allowing classes to download faster as a group rather than one at a time...
.
public
- The
public
keyword is used in the declaration of a class, method, or field; public classes, methods, and fields can be accessed by the members of any class.
returnMethod (computer science)In object-oriented programming, a method is a subroutine associated with a class. Methods define the behavior to be exhibited by instances of the associated class at program run time...
- Used to finish the execution of a method. It can be followed by a value required by the method definition that is returned to the caller.
short
- The
short
keyword is used to declare a field that can hold a 16-bit signed two's complement integer. This keyword is also used to declare that a method returns a value of typeshort
.
staticStatic variableIn computer programming, a static variable is a variable that has been allocated statically — whose lifetime extends across the entire run of the program...
- Used to declare a field, method or inner class as a class field. Classes maintain one copy of class fields regardless of how many instances exist of that class.
static
also is used to define a method as a class method. Class methods are boundName bindingIn programming languages, name binding is the association of objects with identifiers. An identifier bound to an object is said to reference that object. Machine languages have no built-in notion of identifiers, but name-object bindings as a service and notation for the programmer is implemented...
to the class instead of to a specific instance, and can only operate on class fields. (Classes and interfaces declared asstatic
members of another class or interface are actually top-level classes and are not inner classes.)
strictfpStrictfpstrictfp is a keyword in the Java programming language that restricts floating-point calculations to ensure portability. It was introduced into Java with the Java virtual machine version 1.2.-Basis:...
(as of J2SE 1.2)
- A Java keyword used to restrict the precision and rounding of floating point calculations to ensure portability.
superInheritance (object-oriented programming)In object-oriented programming , inheritance is a way to reuse code of existing objects, establish a subtype from an existing object, or both, depending upon programming language support...
- Used to access members of a class inherited by the class in which it appears. Allows a subclass to access overriddenMethod overriding (programming)Method overriding, in object oriented programming, is a language feature that allows a subclass or child class to provide a specific implementation of a method that is already provided by one of its superclasses or parent classes...
methods and hidden members of its superclass. Thesuper
keyword is also used to forward a call from a constructor to a constructor in the superclass. - Also used to specify a lower bound on a type parameter in Generics.
switchSwitch statementIn computer programming, a switch, case, select or inspect statement is a type of selection control mechanism that exists in most imperative programming languages such as Pascal, Ada, C/C++, C#, Java, and so on. It is also included in several other types of languages...
- The
switch
keyword is used in conjunction withcase
anddefault
to create a switch statementSwitch statementIn computer programming, a switch, case, select or inspect statement is a type of selection control mechanism that exists in most imperative programming languages such as Pascal, Ada, C/C++, C#, Java, and so on. It is also included in several other types of languages...
, which evaluates a variable, matches its value to a specificcase
, and executes the block of statements associated with thatcase
. If nocase
matches the value, the optional block labelled bydefault
is executed, if included.
synchronizedMutual exclusionMutual exclusion algorithms are used in concurrent programming to avoid the simultaneous use of a common resource, such as a global variable, by pieces of computer code called critical sections. A critical section is a piece of code in which a process or thread accesses a common resource...
- Used in the declaration of a method or code block to acquire the mutex lock for an object while the current threadThread (computer science)In computer science, a thread of execution is the smallest unit of processing that can be scheduled by an operating system. The implementation of threads and processes differs from one operating system to another, but in most cases, a thread is contained inside a process...
executes the code. For static methods, the object locked is the class'Class
. Guarantees that at most one thread at a time operating on the same object executes that code. The mutex lock is automatically released when execution exits the synchronized code. Fields, classes and interfaces cannot be declared as synchronized.
this
- Used to represent an instance of the class in which it appears.
this
can be used to access class members and as a reference to the current instance. Thethis
keyword is also used to forward a call from one constructor in a class to another constructor in the same class.
throw
- Causes the declared exception instance to be thrown. This causes execution to continue with the first enclosing exception handler declared by the
catch
keyword to handle an assignment compatible exception type. If no such exception handler is found in the current method, then the method returns and the process is repeated in the calling method. If no exception handler is found in any method call on the stack, then the exception is passed to the thread's uncaught exception handler.
throws
- Used in method declarations to specify which exceptions are not handled within the method but rather passed to the next higher level of the program. All uncaught exceptions in a method that are not instances of
RuntimeException
must be declared using thethrows
keyword.
transientTransient (computer programming)-Java:In the Java programming language, transient is a keyword used as a field modifier. When a field is declared transient, it would not be serialized even if the class to which it belongs is serialized...
- Declares that an instance field is not part of the default serializedSerializationIn computer science, in the context of data storage and transmission, serialization is the process of converting a data structure or object state into a format that can be stored and "resurrected" later in the same or another computer environment...
form of an object. When an object is serialized, only the values of its non-transient instance fields are included in the default serial representation. When an object is deserialized, transient fields are initialized only to their default value. If the default form is not used, e.g. when a serialPersistentFields table is declared in the class hierarchy, all 'transient' keywords are ignored.
try
- Defines a block of statements that have exception handling. If an exception is thrown inside the
try
block, an optionalcatch
block can handle declared exception types. Also, an optionalfinally
block can be declared that will be executed when execution exits thetry
block andcatch
clauses, regardless of whether an exception is thrown or not. Atry
block must have at least onecatch
clause or afinally
block.
void
- The
void
keyword is used to declare that a method does not return any value.
volatileVolatile variableIn computer programming, particularly in the C, C++, C#, and Java programming languages, a variable or object declared with the volatile keyword usually has special properties related to optimization and/or threading...
- Used in field declarations to specify that the variable is modified asynchronously by concurrently running threads. Methods, classes and interfaces thus cannot be declared volatile.
whileDo while loopIn most computer programming languages, a do while loop, sometimes just called a do loop, is a control flow statement that allows code to be executed repeatedly based on a given Boolean condition. Note though that unlike most languages, Fortran's do loop is actually analogous to the for loop.The...
- The
while
keyword is used to create a while loopWhile loopIn most computer programming languages, a while loop is a control flow statement that allows code to be executed repeatedly based on a given boolean condition. The while loop can be thought of as a repeating if statement....
, which tests a boolean expressionBoolean expressionIn computer science, a Boolean expression is an expression in a programming language that produces a Boolean value when evaluated, i.e. one of true or false...
and executes the block of statements associated with the loop if the expression evaluates totrue
; this continues until the expression evaluates tofalse
. This keyword can also be used to create a do-while loop; seedo
.
Reserved words for literal values
false
- A boolean literal value.
null
- A reference literal value.
true
- A boolean literal value.