Keywords | Java

Keywords | Java

Basics • Java Fundamentals

In Java some words are reserved to represent special meaning or functionality such type of words are called reserve words or keywords.

There are 67 java keywords. These keywords are divided into multiple categories -

List of Keywords

_

  • Added in Java 9 the _has become a keyword and cannot be used as a variable name anymore.

abstract

  • A method with no definition must be declared as abstract and the class containing it must be declared as abstract.

  • Abstract classes cannot be instantiated i.e., we cannot create object. Abstract methods must be implemented in the subclasses.

  • The abstract keyword cannot be used with variables or constructors.

  • Note that an abstract class is not required to have an abstract method at all.

boolean

  • Defines boolean variable for the values true or false only by default the values of boolean primitive type is false.

  • This keyword is also used to declare that a method returns a value of the primitive type boolean.

break

  • Used to end execution in the current loop body.

  • Used to break out a switch block.

byte

  • The byte keyword is used to declare a field that can hold an 8 bit sign to complement integer.

  • This keyword is also used to declare that a method return a value of the primitive type byte

case

  • A statement in the switch block can be labelled with one or more case or default labels.

  • The switch statement evaluates his expression then executes all statements that follow the matching case label.

catch

  • Used in conjunction with a try block and an optional finally block.

  • The statements in the catch block specify what to do if a specific type of exception is thrown by the try block

char

  • Defines a character variable capable of holding any character of the java source file's character set.

class

  • A type that define the implementation of a particular kind of object.

  • A class definition defines instance and class fields, methods and inner classes as well as specifying the interfaces the class implements and the immediate superclass of the class.

continue

  • Use to resume programme execution at the end of the current loop body. If followed by a label, continue resumes execution at the end of the enclosing labelled loop body.

default

  • The default keyword can optionally be used in a switch statement to label a block of statements to be executed if no case matches the specified value.

  • Alternatively the default keyword can also be used to declare default values in Java annotation.

do

  • The do keyword is used in conjunction with while to create a do-while loop which executes a block of statements associated with the loop and then tests a boolean expression associated with the while.

  • If the expression evaluates to true the block is executed again; this continues until the expression evaluates to false.

double

  • The double keyword is used to declare a variable that can hold 64 bit double precision number.

  • This keyword is also used to declare that a method returns a value of the primitive type double.

else

  • The else keyboard is used in conjunction with if to create an if-else statement which tests of boolean expression.

  • If the expression evaluates to true the block of statements associated with the if are evaluated. If it evaluates to false the block of statement associated with the else are evaluated.

enum

  • A Java keyword used to declare an enumerated type. Enumerations extend the base class

extends

  • Used in a class declaration to specify the superclass;

  • Used in an interface declaration to specify one or more superinterfaces.

final

  • Define an entity once that cannot be changed nor derived from later.

  • 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 on an executed command.

  • 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.

  • The finally block is executed after execution exits the try block and any associated catch clauses regardless of whether an exception was thrown or caught, or execution left method in the middle of the try or catch blocks using the return keyword.

float

  • The float keyword is used to declare a variable that can hold a 32-bit single precision floating-point number.

  • This keyword is also used to declare that a method returns a value of the primitive type float.

for

  • The for keyword is used to create a for loop, which specifies a variable initialization, a boolean expression, and an incrementation.

  • The variable initialization is performed first, and then the boolean expression is evaluated.

  • If the expression evaluates to true, 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 to false.

if

  • The if keyword is used to create an if statement, which tests a boolean expression;

  • If the expression evaluates to true, the block of statements associated with the if statement is executed. This keyword can also be used to create an if-else statement

implements

  • Included in a class declaration to specify one or more interfaces 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 packages to be referred to later without including their package names in the reference.

  • Since J2SE 5.0, import statements can import static members of a class.

instanceof

  • A binary operator that takes an object reference as its first operand and a class or interface as its second operand and produces a boolean result. The instanceof operator evaluates to true if and only if the runtime type of the object is assignment compatible with the class or interface.

int

  • The int keyword is used to declare a variable 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 the primitive type int.

interface

  • Used to declare a special type of class that only contains abstract or default methods, constant (static final) fields and static interfaces.

  • It can later be implemented by classes that declare the interface with the implements keyword.

  • As multiple inheritance is not allowed in Java, but in case of interface we can.

  • An interface can be defined within another interface.

long

  • The long keyword is used to declare a variable 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 the primitive type long.

native

  • Used in method declarations to specify that the method is implemented in another language.

new

  • Used to create an instance of a class or array object.

package

  • Java package is a group of similar classes and interfaces.

  • 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 subclasses or classes from the same package.

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.

return

  • 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 the primitive type short.

static

  • 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 bound to the class instead of to a specific instance, and can only operate on class fields.

  • Classes and interfaces declared as static members of another class or interface are actually top-level classes and are not inner classes.

super

  • Inheritance basically used to achieve dynamic binding or run-time polymorphism in java.

  • Used to access members of a class inherited by the class in which it appears.

  • Allows a subclass to access overridden methods and hidden members of its superclass.

  • The super 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.

switch

  • The switch keyword is used in conjunction with case and default to create a switch statement, which evaluates a variable, matches its value to a specific case, and executes the block of statements associated with that case.

  • If no case matches the value, the optional block labelled by default is executed, if included.

synchronized

  • Used in the declaration of a method or code block to acquire the mutex lock for an object while the current thread executes the code.

  • For static methods, the object locked is the class's 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.

  • The this 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 the throws keyword.

transient

  • Declares that an instance field is not part of the default serialized 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 optional catch block can handle declared exception types.

  • Also, an optional finally block can be declared that will be executed when execution exits the try block and catch clauses, regardless of whether an exception is thrown or not.

  • A try block must have at least one catch clause or a finally block.

void

  • The void keyword is used to declare that a method does not return any value.

volatile

  • Used in field declarations to guarantee visibility of changes to variables across threads.

  • Every read of a volatile variable will be read from main memory, and not from the CPU cache, and that every write to a volatile variable will be written to main memory, and not just to the CPU cache

  • Methods, classes and interfaces thus cannot be declared volatile, nor can local variables or parameters.

while

  • The while keyword is used to create a while loop, which tests a boolean expression and executes the block of statements associated with the loop if the expression evaluates to true; this continues until the expression evaluates to false.

  • This keyword can also be used to create a do-while loop;

Reserved Identifiers

The following identifiers are contextual keywords, and are only restricted in some contexts:

exports, module, non-sealed, open, opens, permits, provides, record requires, to, transitive, uses, var, with, and yield.

Unused Keywords

Following are the keywords that are depicted from Java and are no more used in day to day programming.

const

  • It is used to define the constant values to a variable.

goto

  • It is a reserve as a keyword in Java. You should transfer the control of a programme to another line.

strictfp

  • strictfp is obsolete, and no longer has any function.

  • Previously this keyword was used to restrict the precision and rounding of floating point calculations to ensure portability.

In addition to the keywords, Java reserves three other names that have been part of Java from the start: true, false, and null. These are values defined by Java. You may not use these words for the names of variables, classes, and so on

Did you find this article valuable?

Support Xander Billa by becoming a sponsor. Any amount is appreciated!