1. Liste de mots

Comme dans tout langage de programmation, Java a des mots qui ont une signification particulière. Par exemple, returnou ifou while. Ces mots sont appelés mots-clés ( mots clés ) et sont considérés comme réservés par le langage Java.

Vous ne pouvez pas utiliser ces mots comme nom de variable, nom de méthode ou nom de classe. Le compilateur les interprétera toujours d'une manière strictement définie. Il y a 54de tels mots en Java.

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

Vous en connaissez déjà certains, et nous parlerons du reste tout de suite.


2. Types primitifs

Comme vous vous en souvenez probablement, Java a 8 types primitifs, et chacun d'eux a son propre mot clé :

  • byte
  • short
  • int
  • long
  • char
  • float
  • double
  • boolean
  • void

Si vous avez un esprit suffisamment curieux, il y a de fortes chances que vous ayez déjà essayé de nommer une variable int. Et bien sûr, vous n'avez pas réussi. C'est précisément parce que les noms de tous les types primitifs sont des mots réservés.

Le voidtype entre également dans cette catégorie.


3. Boucles et branches

Les boucles et les branches nous donnent également une liste assez longue de mots-clés :

  • if
  • else
  • switch
  • case
  • default
  • while
  • do
  • for
  • break
  • continue

Seulement 10 mots suffisent pour que le langage fournisse plusieurs types de boucles, de branches et d'instructions de contrôle pour interrompre les boucles ( breaket continue) et les branches multiples ( switch). Vous connaissez déjà tous ces mots-clés.


4. Dérogations

Les exceptions nous donnent 5 mots-clés :

  • try
  • catch
  • finally
  • throw
  • throws

Ils font tous partie d'un try-catch-finallybloc. L'opérateur pour lever des exceptions est throw, et le throwsmot-clé prend en charge le checkedmécanisme d'exception.

La bonne nouvelle est que vous êtes déjà familiarisé avec tous les mots-clés liés aux exceptions, vous êtes donc également déjà familiarisé avec le travail avec les exceptions.


5. Visibilité

Ici, il n'y a que trois mots-clés, et vous les connaissez déjà.

  • private
  • protected
  • public

publicpermet d'accéder à une méthode/variable/classe de n'importe où dans le programme.

privateinterdit l'accès à une méthode/variable/classe de n'importe où dans le programme. L'accès n'est autorisé qu'au sein de la même classe qu'une méthode marquée avec le privatemodificateur.

protectedfonctionne de la même manière que private, mais permet également d'accéder à une méthode/variable/classe à partir de classes héritées. Les avantages de ce modificateur vous apparaîtront plus clairement lorsque vous vous familiariserez avec la POO et l'héritage.


6. Travailler avec des classes

Il y a 11 mots-clés dans cette catégorie :

  • class
  • interface
  • enum
  • import
  • package
  • extends
  • implements
  • static
  • final
  • abstract
  • default

Ils peuvent être divisés en 4 groupes.

Le premier groupe concerne la création des classes : class, interfaceet enum. Vous avez déjà appris comment déclarer des classes et des énumérations . Le interfacemot-clé est utilisé pour déclarer encore un autre type de type classe : interfaces.

Le deuxième groupe comprend les mots-clés package et import , que vous connaissez déjà. Le mot-clé package est utilisé pour spécifier le package d'une classe dans un fichier de classe. Et importc'est ainsi que nous pouvons utiliser des noms courts de classes externes lors de l'écriture de nos propres classes.

Les mots clés extendset implementssont utilisés pour l'héritage. Vous les découvrirez au tout début de la quête Java Core.

Enfin, le dernier groupe comprend les modificateurs static, final, defaultet . abstractVous en savez déjà un peu sur staticet final. Le abstractmot-clé est utilisé pour rendre une classe ou une méthode abstraite. Vous obtiendrez plus de détails lors de l'étude de l'héritage dans la quête Java Core.


7. Travailler avec des objets et des variables

Six autres mots-clés sont utilisés lorsque vous travaillez avec des objets, des méthodes et des variables.

  • new
  • instanceof
  • this
  • super
  • return
  • var(depuis Java 10)

L' newopérateur est utilisé pour créer de nouveaux objets — vous le savez déjà.

L' instanceofopérateur est utilisé pour vérifier qu'une variable contient une référence à un objet d'un type particulier. Vous le connaissez déjà.

Le thismot clé est utilisé pour résoudre les problèmes qui surviennent en raison de l'occultation des variables d'instance et des méthodes. Vous avez également étudié cela.

Le supermot-clé est analogue à this, mais il est utilisé pour faire référence aux méthodes et aux variables de la classe parent. La classe mère est aussi appelée la superclasse.

L' returninstruction est utilisée pour renvoyer la valeur d'une méthode et également pour terminer l'exécution d'une méthode.

Enfin, varsert à déclarer une variable dont le type est automatiquement déduit. Vous êtes déjà familier avec cela.


8. Multithreading

Au niveau de la syntaxe Java, le multithreading est représenté par seulement deux mots.

  • synchronized
  • volatile

Nous ne les toucherons même pas. Accédez à la quête Java Multithreading , puis nous plongerons dedans.


9. Divers

Il existe 4 autres mots-clés spéciaux :

  • native
  • transient
  • assert
  • strictfp

nativeest un modificateur qui peut être écrit avant une déclaration de méthode. Cela signifie que le code de la méthode n'est pas écrit en Java, mais en C++ et est intégré dans la machine Java (enfin, ou une DLL). Comme vous l'avez probablement déjà deviné, la machine Java elle-même est également écrite en C++. Tout comme la plupart des méthodes de bibliothèque standard.

transientest un modificateur qui peut être écrit avant les variables d'instance (champs d'une classe). Il demande à la machine Java de sauter (ou d'ignorer) la variable marquée lors de la sérialisation d'un objet de la classe. Vous pouvez en savoir plus sur la sérialisation dans la quête Java Collections.

assertvient également à Java à partir de C++. Avec son aide, vous pouvez ajouter des vérifications supplémentaires à votre code (par exemple, pour vérifier si une variable est nulle). L'important ici est que ces vérifications soient activées ou désactivées au moment de la compilation.

Vous pouvez construire le projet pour des tests internes, et ces vérifications seront effectuées (incluses dans la construction). Ou vous pouvez les désactiver lors de la compilation pour créer la version du programme qui sera fournie aux utilisateurs.

Quant au strictfpmot clé et à la précision supplémentaire des processeurs Intel, nous avons toute une histoire pour vous .


10. Réservé mais non utilisé

Il existe également deux mots-clés qui sont réservés mais non utilisés.

  • const
  • goto

Ceux-ci sont également un héritage du langage C++, là où ils existent et sont utilisés.


11. Pas des mots-clés

Formellement, les constantes true, falseet nullne sont pas des mots clés. Cela dit, ils ont chacun leurs particularités. Vous ne pouvez pas nommer une méthode trueou une variable false. Le compilateur ne comprendra pas ce code et ne le compilera pas.