« Programmation Java/Modificateur » : différence entre les versions

Contenu supprimé Contenu ajouté
Traroth (discussion | contributions)
mAucun résumé des modifications
Traroth (discussion | contributions)
+
Ligne 1 :
{{Programmation Java}}
 
==Modificateurs d'accès==
 
En Java, la déclaration d'une classe, d'une méthode ou d'un membre peut être précédée par un modificateur d'accès.
Ligne 12 ⟶ 14 :
 
L'utilisation des modificateurs permet au programmeur de controller la visibilté des différents items et permet d'empêcher que des actions illégales soient effectués sur les items.
 
Si aucun modificateur d'accès n'est précisé, l'item sera visible par les classes du même package que l'item.
 
==abstract==
 
Le modificateur <tt>abstract</tt> permet d'indiquer qu'une classe est [[Programmation Java Classes abstraites|abstraite]].
 
==final==
 
Ajouté devant un attribut, il permet de le rendre immuable (attention, à la différence des constantes d'autres langages, il n'est pas obligatoire de lui donner immédiatement une valeur. Simplement, lorsuq'il aura une valeur, il ne sera plus possible de la modifier).
 
Devant une variable locale (dans une méthode, donc), il a le même comportement que pour un attribut.
 
Devant une méthode, il indique que cette méthode ne pourra pas être modifiée dans une classe dérivée. Les méthodes <tt>static</tt> et <tt>private</tt> sont implicitement <tt>final</tt>.
 
Devant une classe, il indique que cette classe ne peut pas avoir de sous-classe.
 
==native==
 
Ce modificateur permet d'indiquer que cet item est défini dans une librairie extérieure écrite dans un autre langage de programmation et accessible par JNI.
 
==static==
 
Le modificateur static indique, pour une méthode, qu'elle peut être appellée sans instancier sa classe (syntaxe : Classe.methode()).
 
Pour un attribut, qu'il s'agit d'un attribut de classe, et que sa valeur est donc partagée entre les différentes instances de sa classe.
 
De plus, il est possible de déclarer dans une classe un bloc d'initialisation statique, qui est un bloc d'instruction précédé du modificateur <tt>static</tt>.
 
 
==strictfp==
 
 
 
==synchronized==
 
==transient==
 
==volatile==