Java keywords are the reserved words which have a predefined meaning to the Java compiler. These predefined words cannot be used as a variable or object name or class name and if we use it we will get a compile error.
List of Java Keywords :
abstract: It is used to declare an abstract class which helps in implementation of the interface. An abstract class can have abstract and non-abstract methods.
assert: It describes a predicate(a true–false statement) placed in a java program to indicate that the developer thinks that the predicate is always true at that place.
boolean: It is used to declare a variable as a boolean type and can hold True and False values only.By default, the value of boolean primitive type is false
break: It is used to break the loop or switch statement. It breaks the current flow of the program at specified conditions.
byte: It is used to declare a variable that can hold 8-bit data values.
case: It is used to mark a block of text in switch statements
catch: It is used to catch the exceptions generated by try statements. It must be used only after the try block.
char: It is used to declare a variable that can hold unsigned 16-bit Unicode characters
class: It is used to declare a new class.
continue: It used to continue the loop. It continues the current flow of the program and skips the remaining code at the specified condition.
default: It is used to specify the default block of code in a switch statement.
do: It is used in the control statement to declare a loop and can iterate a part of the program several times.
double: It is used to declare a variable that can hold 64-bit floating-point number.
else: It is used to indicate the alternative branches in an if statement.
enum: It is used to declare an enumerated type. Enumerations extend the base class. Enum constructors are always private or default.
extends: It is used to indicate that a class is derived from another class or interface.
final: It is used to indicate that a variable holds a constant value. It is used with a variable and restrict the user from updating the value of the variable.
finally: It indicates a block of code in a try-catch structure. This block is always executed whether an exception is handled or not.
float: It is used to declare a variable that can hold a 32-bit floating-point number.
for: It is used to start a for loop. It is used to execute a set of instructions/functions repeatedly when some condition becomes true. If the number of iteration is fixed, it is recommended to use for loop.
if: It 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 (i.e if keyword) can also be used to create an if-else statement;
implements: It is used to implement an interface.
import: It makes classes and interfaces available and accessible to the current source code.
instanceof: It is used to test whether the object is an instance of the specified class or implements an interface.
int: It is used to declare a variable that can hold a 32-bit signed integer.
interface: It is used to declare an interface. It can have only abstract methods.
long: It is used to declare a variable that can hold a 64-bit integer.
native: It is used to specify that a method is implemented in native code using JNI (Java Native Interface).
new: It is used to create new objects.
null: It is used to indicate that a reference does not refer to anything. It removes the garbage value.
package: It is used to declare a Java package that includes the classes.
private: It is an access modifier which is used to indicate that a method or variable may be accessed only in the class in which it is declared.
protected: It is an access modifier which can be accessible within the package and outside the package but through inheritance only. It can’t be applied with the class.
public: It is an access modifier which is used to indicate that an item is accessible anywhere. It has the widest scope among all other modifiers.public classes, methods, and fields can be accessed by the members of any class
return: It is used to return from a method when its execution is complete.
short: It is used to declare a variable that can hold a 16-bit integer.
static: It is used to indicate that a variable or method is a class method. The static keyword in Java is mainly used for memory management.
strictfp: It is used to restrict the floating-point calculations to ensure portability.
super: It is a reference variable that is used to refer to parent class objects. It can be used to invoke the immediate parent class method.
switch: It contains a switch statement that executes code based on test value. The switch statement tests the equality of a variable against multiple values.
synchronized: It is used to specify the critical sections or methods in multithreaded code.
this: It is used to refer the current object in a method or constructor.
throw: It is used to explicitly throw an exception. The throw keyword is mainly used to throw custom exceptions. It is followed by an instance.
throws: It is used to declare an exception. Checked exceptions can be propagated with throws.
transient: It is used in serialization. If you define any data member as transient, it will not be serialized.
try: It is used to start a block of code that will be tested for exceptions. The try block must be followed by either catch or finally block.
void: It is used to specify that a method does not have a return value.
volatile: It is used to indicate that a variable may change asynchronously.
while: It is used to start a while loop. This loop iterates a part of the program several times. If the number of iteration is not fixed, it is recommended to use the while loop.
non-sealed : It is used to declare that a class or interface which extends a sealed class can be extended by unknown classes
permits : The permits clause specifies the classes that are permitted to extend a sealed class
sealed : A sealed class or interface can only be extended or implemented by classes and interfaces permitted to do so
var : It is special identifier that cannot be used as a type name (since Java 10)
when : It used as an additional check for a case statement
yield : It used to set a value for a switch expression, when using labelled statement groups (for example, case L:).
The keywords const and goto are reserved for future use. Currently they are no longer supported in Java.
strictfp which was added in J2SE 1.2, although reserved as a keyword in Java, is obsolete, and no longer has any function. Previously strictfp keyword was used to restrict the precision and rounding of floating point calculations to ensure portability
true, false and null are literals and not keywords and can’t be used as identifiers in a program.