Palabras Reservadas en Java

Las palabras reservadas, como su nombre lo indican, son palabras las cuales el lenguaje de programaciĆ³n ya ha reservado para realizar ciertas tareas. 

En el lenguaje de programaciĆ³n Java, una palabra clave es cualquiera de las 57 palabras reservadas que tienen un significado predefinido en el lenguaje; debido a esto, los programadores no pueden usar palabras clave como nombres para variables, mĆ©todos, clases o como cualquier otro identificador. De estas 57 palabras clave, 55 estĆ”n en uso y 2 no estĆ”n en uso. Debido a sus funciones especiales en el lenguaje, la mayorĆ­a de los entornos de desarrollo integrados para Java utilizan el resaltado de sintaxis para mostrar palabras clave en un color diferente para una fĆ”cil identificaciĆ³n.


abstract continue for new switch
assert default goto package synchronized
boolean do if private this
breack double implements protected throw
byte else import public thows
case enum instanceof return transient
catch extends int short try
char final interface static void
class finally long strictfp volatile
const float native super while


Algo importante a tener en cuenta es que las palabras reservadas no pueden ser utilizadas como nombres de variables, clases o mƩtodos.

Aunque const y goto son palabras reservadas, estas no son utilizadas en la actualidad.

En adiciĆ³n a este listados podemos agregar true, false y null.

abstract

Se utilizan para implementar una abstracciĆ³n en Java. Un mĆ©todo sin definiciĆ³n debe declararse como abstracto y la clase que lo contiene debe declararse como abstracto. Las clases abstractas no pueden ser instanciadas. Los mĆ©todos abstractos deben ser implementados en las subclases. La palabra clave abstract no se puede utilizar con variables o constructores. Tenga en cuenta que no se requiere que una clase abstracta tenga un mĆ©todo abstracto en absoluto.

assert

Assert describe un predicado (una declaraciĆ³n de verdadero / falso) colocado en un programa Java para indicar que el desarrollador piensa que el predicado siempre es verdadero en ese lugar. Si una aserciĆ³n se evalĆŗa como falsa en tiempo de ejecuciĆ³n, se produce un error de aserciĆ³n, que normalmente hace que la ejecuciĆ³n se anule. Opcionalmente habilitar por el mĆ©todo ClassLoader.

boolean

Define una variable booleana para los valores "true" o "false" solamente. Por defecto, el valor del tipo primitivo booleano es falso. Esta palabra clave tambiƩn se usa para declarar que un mƩtodo devuelve un valor del tipo primitivo booleano.

break

Se utiliza para finalizar la ejecuciĆ³n en el cuerpo del bucle actual.

byte

La palabra clave byte se utiliza para declarar un campo que puede contener un entero de complemento de dos con signo de 8 bits. Esta palabra clave tambiƩn se utiliza para declarar que un mƩtodo devuelve un valor del byte tipo primitivo.

case

Una declaraciĆ³n en el bloque de conmutaciĆ³n se puede etiquetar con una o mĆ”s etiquetas de case. La instrucciĆ³n switch evalĆŗa su expresiĆ³n, luego ejecuta todas las declaraciones que siguen la etiqueta de caso correspondiente.

catch

Se usa junto con un bloque de prueba y un bloque finalmente opcional. Las declaraciones en el bloque catch especifican quĆ© hacer si el bloque try lanza un tipo especĆ­fico de excepciĆ³n.

char

Define una variable de carƔcter capaz de contener cualquier carƔcter del conjunto de caracteres del archivo fuente Java.

class

Un tipo que define la implementaciĆ³n de un tipo particular de objeto. Una definiciĆ³n de clase define los campos de instancia y clase, los mĆ©todos y las clases internas, ademĆ”s de especificar las interfaces que implementa la clase y la superclase inmediata de la clase. Si la superclase no se especifica explĆ­citamente, la superclase es implĆ­citamente Object. La palabra clave de clase tambiĆ©n se puede utilizar en el formulario Class.class para obtener un objeto Class sin necesidad de una instancia de esa clase. Por ejemplo, String.class se puede usar en lugar de hacer una nueva String (). GetClass ().

continue

Se utiliza para reanudar la ejecuciĆ³n del programa al final del cuerpo del bucle actual. Si le sigue una etiqueta, continĆŗe con la ejecuciĆ³n de reanudaciĆ³n al final del cuerpo del bucle etiquetado adjunto.

default

La palabra clave default se puede usar opcionalmente en una instrucciĆ³n de cambio para etiquetar un bloque de instrucciones que se ejecutarĆ”n si ningĆŗn caso coincide con el valor especificado; ver interruptor. Alternativamente, la palabra clave predeterminada tambiĆ©n se puede utilizar para declarar valores predeterminados en una anotaciĆ³n de Java. Desde Java 8 en adelante, la palabra clave predeterminada se puede usar para permitir que una interfaz proporcione una implementaciĆ³n de un mĆ©todo.

do

La palabra clave do se usa junto con while para crear un bucle do-while, que ejecuta un bloque de sentencias asociadas con el bucle y luego prueba una expresiĆ³n booleana asociada con while. Si la expresiĆ³n se evalĆŗa como verdadera, el bloque se ejecuta de nuevo; esto continĆŗa hasta que la expresiĆ³n se evalĆŗa como falsa.

double

La palabra clave double se usa para declarar una variable que puede contener un nĆŗmero de punto flotante IEEE 754 de doble precisiĆ³n de 64 bits. Esta palabra clave tambiĆ©n se usa para declarar un mĆ©todo que devuelve un valor del tipo primitivo double.

else

La palabra clave else se usa junto con if para crear una sentencia if-else, que pruebe una expresiĆ³n booleana; si la expresiĆ³n se evalĆŗa como verdadera, se evalĆŗa el bloque de instrucciones asociadas con el if; si se evalĆŗa como falso, se evalĆŗa el bloque de declaraciones asociadas con else.

enum (agregada en J2SE 5.0)

Una palabra clave de Java utilizada para declarar un tipo enumerado. Las enumeraciones amplĆ­an la clase base Enum.

exports

Se utiliza en java modular para exportar un paquete con un mĆ³dulo. Esta palabra clave sĆ³lo estĆ” disponible en Java 9 y versiones posteriores.

extends

Se utiliza en una declaraciĆ³n de clase para especificar la superclase; utilizado en una declaraciĆ³n de interfaz para especificar una o mĆ”s superinterfaces. La clase X extiende la clase Y para agregar funcionalidad, ya sea agregando campos o mĆ©todos a la clase Y, o reemplazando los mĆ©todos de la clase Y. Una interfaz Z extiende una o mĆ”s interfaces al agregar mĆ©todos. Se dice que la clase X es una subclase de la clase Y; Se dice que la interfaz Z es una subinterfaz de las interfaces que se extiende. TambiĆ©n se usa para especificar un lĆ­mite superior en un parĆ”metro de tipo en GenĆ©ricos.

final

Defina una entidad una vez que no se puede cambiar ni derivar de mĆ”s adelante. MĆ”s especĆ­ficamente: una clase final no puede ser subclasificada, un mĆ©todo final no puede ser anulado, y una variable final puede aparecer como mĆ”ximo una vez como una expresiĆ³n de la mano izquierda en un comando ejecutado. Todos los mĆ©todos en una clase final son implĆ­citamente finales.

finally

Se utiliza para definir un bloque de instrucciones para un bloque definido previamente por la palabra clave try. El bloque finally se ejecuta despuĆ©s de que la ejecuciĆ³n sale del bloque try y de cualquier clĆ”usula catch asociada sin importar si se lanzĆ³ o capturĆ³ una excepciĆ³n, o si se ejecutĆ³ el mĆ©todo de izquierda en medio de los bloques try o catch usando la palabra clave return.

float

La palabra clave flotante se usa para declarar una variable que puede contener un nĆŗmero punto flotante IEEE 754 de precisiĆ³n simple de 32 bits. Esta palabra clave tambiĆ©n se usa para declarar que un mĆ©todo devuelve un valor del tipo primitivo float.

for

La palabra clave for se utiliza para crear un bucle for, que especifica una inicializaciĆ³n variable, una expresiĆ³n booleana y un incremento. La inicializaciĆ³n de la variable se realiza primero y luego se evalĆŗa la expresiĆ³n booleana. Si la expresiĆ³n se evalĆŗa como verdadera, el bloque de instrucciones asociado con el bucle se ejecuta, y luego se realiza el incremento. La expresiĆ³n booleana se evalĆŗa de nuevo; esto continĆŗa hasta que la expresiĆ³n se evalĆŗa como falsa. A partir de J2SE 5.0, la palabra clave for tambiĆ©n se puede usar para crear el llamado "bucle mejorado para", que especifica una matriz o un objeto iterable; Cada iteraciĆ³n del bucle ejecuta el bloque asociado de declaraciones utilizando un elemento diferente en la matriz o Iterable.

if

La palabra clave if se usa para crear una sentencia if, que prueba una expresiĆ³n booleana; si la expresiĆ³n se evalĆŗa como verdadera, se ejecuta el bloque de instrucciones asociadas con la instrucciĆ³n if. Esta palabra clave tambiĆ©n se puede utilizar para crear una sentencia if-else; ver otra cosa.

implements

Incluido en una declaraciĆ³n de clase para especificar una o mĆ”s interfaces implementadas por la clase actual. Una clase hereda los tipos y mĆ©todos abstractos declarados por las interfaces.

import

Se usa al comienzo de un archivo fuente para especificar clases o paquetes completos de Java para consultarlos mĆ”s adelante sin incluir sus nombres de paquete en la referencia. Desde J2SE 5.0, las declaraciones de importaciĆ³n pueden importar miembros estĆ”ticos de una clase.

instanceof

Un operador binario que toma una referencia de objeto como su primer operando y una clase o interfaz como su segundo operando y produce un resultado booleano. El instanceofoperator evalĆŗa como verdadero si y solo si el tipo de tiempo de ejecuciĆ³n del objeto es compatible con la clase o la interfaz.

int

La palabra clave int se utiliza para declarar una variable que puede contener un entero de complemento a dos con signo de 32 bits. Esta palabra clave tambiƩn se usa para declarar que un mƩtodo devuelve un valor del tipo primitivo int.

interface

Se utiliza para declarar un tipo especial de clase que solo contiene mĆ©todos abstractos o predeterminados, campos constantes (final estĆ”tico) e interfaces estĆ”ticas. MĆ”s tarde puede implementarse por clases que declaran la interfaz con la palabra clave implementa. Como la herencia mĆŗltiple no estĆ” permitida en Java, las interfaces se utilizan para evitarla. Una interfaz se puede definir dentro de otra interfaz.

long

La palabra clave larga se usa para declarar una variable que puede contener un entero de complemento a dos con signo de 64 bits. Esta palabra clave tambiƩn se usa para declarar que un mƩtodo devuelve un valor del tipo primitivo long.

module

La palabra clave del mĆ³dulo se utiliza para declarar un mĆ³dulo dentro de una aplicaciĆ³n Java. Esta palabra clave solo estĆ” disponible en Java 9 y versiones posteriores.

native

Se usa en declaraciones de mƩtodos para especificar que el mƩtodo no se implementa en el mismo archivo fuente de Java, sino en otro idioma.

new

Se utiliza para crear una instancia de una clase o un objeto de matriz. El uso de palabras clave para este fin no es completamente necesario (como lo ejemplifica Scala), aunque sirve para dos propĆ³sitos: permite la existencia de un espacio de nombres diferente para los mĆ©todos y nombres de clase, define estĆ”tica y localmente que se crea un objeto nuevo, y de quĆ© tipo de tiempo de ejecuciĆ³n es (podrĆ­a decirse que introduce dependencia en el cĆ³digo).

package

El package Java es un grupo de clases e interfaces similares. Los paquetes se declaran con la palabra clave del paquete.

private

La palabra clave privada se usa en la declaraciĆ³n de un mĆ©todo, campo o clase interna; Los miembros privados solo pueden ser accedidos por otros miembros de su propia clase.

protected

La palabra clave protegida se usa en la declaraciĆ³n de un mĆ©todo, campo o clase interna; Los miembros protegidos solo pueden acceder a los miembros de su propia clase, las subclases de esa clase o las clases del mismo paquete.

public

La palabra clave pĆŗblica se usa en la declaraciĆ³n de una clase, mĆ©todo o campo; Los miembros de cualquier clase pueden acceder a clases pĆŗblicas, mĆ©todos y campos.

requires

Se utiliza para especificar las bibliotecas requeridas dentro de un mĆ³dulo. Esta palabra clave solo estĆ” disponible en Java 9 y versiones posteriores.

return

Se utiliza para finalizar la ejecuciĆ³n de un mĆ©todo. Puede ir seguido de un valor requerido por la definiciĆ³n del mĆ©todo que se devuelve al
llamante.

short

La palabra clave corta se usa para declarar un campo que puede contener un entero de complemento de dos con signo de 16 bits. Esta palabra clave tambiƩn se usa para declarar que un mƩtodo devuelve un valor del tipo primitivo short.

static

Se utiliza para declarar un campo, mƩtodo o clase interna como un campo de clase. Las clases mantienen una copia de los campos de clase independientemente de cuƔntas instancias existen de esa clase. Staticalso se usa para definir un mƩtodo como un mƩtodo de clase. Los mƩtodos de clase estƔn vinculados a la clase en lugar de a una instancia especƭfica, y solo pueden operar en campos de clase. (Las clases e interfaces declaradas como miembros estƔticos de otra clase o interfaz son en realidad clases de nivel superior y no son clases internas).

strictfp (agregado en J2SE 1.2)

Una palabra clave de Java utilizada para restringir la precisiĆ³n y el redondeo de los cĆ”lculos de punto flotante para garantizar la portabilidad.

super

Herencia bĆ”sicamente utilizada para lograr la vinculaciĆ³n dinĆ”mica o el polimorfismo en tiempo de ejecuciĆ³n en java. Se utiliza para acceder a los miembros de una clase heredada por la clase en la que aparece. Permite que una subclase acceda a mĆ©todos anulados y miembros ocultos de su superclase. La palabra clave super tambiĆ©n se usa para reenviar una llamada de un constructor a un constructor en la superclase. TambiĆ©n se usa para especificar un lĆ­mite inferior en un parĆ”metro de tipo en GenĆ©ricos.

switch

La palabra clave switch se usa junto con case y default para crear una instrucciĆ³n switch, que evalĆŗa una variable, compara su valor con un caso especĆ­fico y ejecuta el bloque de declaraciones asociadas con ese caso. Si no se compara el valor, se ejecuta el bloque opcional etiquetado de forma predeterminada, si se incluye.

synchronized

Se utiliza en la declaraciĆ³n de un mĆ©todo o bloque de cĆ³digo para adquirir el bloqueo mutex para un objeto mientras el hilo actual ejecuta el cĆ³digo. Para los mĆ©todos estĆ”ticos, el objeto bloqueado es la clase de la clase. Garantiza que, como mĆ”ximo, un subproceso a la vez que opera en el mismo objeto ejecuta ese cĆ³digo. El bloqueo mutex se libera automĆ”ticamente cuando la ejecuciĆ³n sale del cĆ³digo sincronizado. Los campos, clases e interfaces no pueden ser declarados como sincronizados.

this

Se utiliza para representar una instancia de la clase en la que aparece.
Esto se puede usar para acceder a los miembros de la clase y como referencia a la instancia actual. La palabra clave tambiƩn se usa para reenviar una llamada de un constructor en una clase a otro constructor en la misma clase.

throw

Hace que se lance la instancia de excepciĆ³n declarada. Esto hace que la ejecuciĆ³n continĆŗe con el primer controlador de excepciones de cierre declarado por la palabra clave catch para manejar un tipo de excepciĆ³n compatible de asignaciĆ³n. Si no se encuentra dicho controlador de excepciones en el mĆ©todo actual, entonces el mĆ©todo vuelve y el proceso se repite en el mĆ©todo de llamada. Si no se encuentra un controlador de excepciones en ninguna llamada de mĆ©todo en la pila, entonces la excepciĆ³n se pasa al controlador de excepciones no capturado del subproceso.

throws

Se utiliza en las declaraciones de mƩtodos para especificar quƩ excepciones no se manejan dentro del mƩtodo, sino que se pasan al siguiente nivel superior del programa. Todas las excepciones no detectadas en un mƩtodo que no sean instancias de RuntimeException deben declararse utilizando la palabra clave throws.

transient

Declara que un campo de instancia no es parte de la forma serializada predeterminada de un objeto. Cuando un objeto se serializa, solo los valores de sus campos de instancia no transitorios se incluyen en la representaciĆ³n serial predeterminada. Cuando un objeto se deserializa, los campos transitorios se inicializan solo a su valor predeterminado. Si no se utiliza el formulario predeterminado, por ejemplo, cuando se declara una tabla serialPersistentFields en la jerarquĆ­a de clases, se ignoran todas las palabras clave transitorias.

try

Define un bloque de sentencias que tienen manejo de excepciones. Si se lanza una excepciĆ³n dentro del bloque try, un bloque catch opcional puede manejar los tipos de excepciĆ³n declarados. AdemĆ”s, se puede declarar un bloque finalmente opcional que se ejecutarĆ” cuando la ejecuciĆ³n salga de las clĆ”usulas try y catch, independientemente de si se lanza una excepciĆ³n o no. Un bloque try debe tener al menos una clĆ”usula catch o un bloque finally.

void

La palabra clave void se usa para declarar que un mĆ©todo no devuelve ningĆŗn valor.

volatile

Se utiliza en declaraciones de campo para especificar que la variable se modifica de forma asƭncrona mediante subprocesos que se ejecutan simultƔneamente. Los mƩtodos, las clases y las interfaces no se pueden declarar volƔtiles, ni las variables o los parƔmetros locales.

while

La palabra clave while se usa para crear un bucle while, que prueba una expresiĆ³n booleana y ejecuta el bloque de sentencias asociadas con el bucle si la expresiĆ³n se evalĆŗa como verdadera; esto continĆŗa hasta que la expresiĆ³n se evalĆŗa como falsa. Esta palabra clave tambiĆ©n se puede utilizar para crear un bucle do-while; ver hacer.

Palabras reservadas para valores literales:

true, null, false

Un valor literal booleano. No son considerados palabras clave de Java, sino literales. Ahora bien, tampoco se pueden utilizar como indentificadores.

Identificadores especiales:

var

Un identificador especial que no se puede usar como nombre de tipo (desde Java 10).No usado

const

Aunque estĆ” reservado como palabra clave en Java, const no se usa y no tiene funciĆ³n. Para definir constantes en Java, vea la palabra clave final.

goto

Aunque reservado como una palabra clave en Java, goto no se usa y no tiene ninguna funciĆ³n. Los paradigmas de programaciĆ³n son una forma de clasificar los lenguajes de programaciĆ³n segĆŗn sus caracterĆ­sticas. Las lenguas se pueden clasificar en mĆŗltiples paradigmas. Algunos paradigmas se ocupan principalmente de las implicaciones para el modelo de ejecuciĆ³n del lenguaje, como permitir efectos secundarios o si la secuencia de operaciones estĆ” definida por el modelo de ejecuciĆ³n. Otros paradigmas se refieren principalmente a la forma en que se organiza el cĆ³digo, como agrupar un cĆ³digo en unidades junto con el estado que es modificado por el cĆ³digo. Sin embargo, otros estĆ”n relacionados principalmente con el estilo de la sintaxis y la gramĆ”tica.