Programmation Java/Types de base
Un livre de Wikibooks.
| Programmation |
| Java |
| Sommaire |
| IHM avec SWING |
| Annexes |
| Modifier ce modèle |
Les types de base ou types primitifs de Java sont (entre parenthèses, la taille de l'empreinte mémoire du type) :
- char (2 octets), destiné à représenter des caractères au format Unicode. Valeur entre 0 et 65 535 (soit
'\u0000'à'\uffff') - byte (1 octet), un octet. Valeur entre -128 et 127.
- short (2 octets), un entier court. Valeur entre -32 768 et 32 767.
- int (4 octets), l'entier le plus courrament utilisé. Valeur entre -2 147 483 648 et 2 147 483 647.
- long (8 octets), un entier long. Valeur entre -9 223 372 036 854 775 808 et 9 223 372 036 854 775 807.
- float (4 octets), nombre à virgule flottante simple précision.
- double (8 octets), nombre à virgule flottante double précision.
- boolean (1 bit), permettant de représenter une valeur logique (vrai/faux, soit
true/false).
[modifier] Variables et classes
Les classes de base comme String ne sont pas des variables primitives, il est aisé de les confondre mais les conventions habituelles d'écriture permettent de distinguer les deux types de données. Les types de variables primitives sont toujours écrits en minuscules, par contre les noms des classes ont en principe leur premier caractère en majuscule. Aussi lorsque vous rencontrez un Int, ce n'est pas un type de base mais bien une classe. En effet les variables primitives peuvent être encapsulées, et java fournit d'ailleurs pour tous les type de variables primitives des classes d'encapsulage appelées wrappers.
Ceci peut être utile dans certains cas pour bénéficier de certaines caractéristiques de leur classe mère Object. Par exemple, la pose d'un verrou de synchronisation (instruction synchronized) ne peut se faire que sur un objet.
[modifier] Les classes wrappers
Une classe wrapper permet d'englober une valeur d'un type primitif dans un objet. La valeur est stockée sous la forme d'un attribut. Chaque classe permet de manipuler la valeur à travers des méthodes (conversions, ...).
- Character pour char
- Byte pour byte
- Short pour short
- Long pour long
- Integer pour int
- Float pour float
- Double pour double
- Boolean pour boolean