q Elle n’est déclarée qu’une seule fois pour l’intégralité du programme. Elle ne doit donc jamais être redéclarée 
tant dans le programme principal que dans un sous­programme. 
q Elle permet indirectement de "passer" des valeurs aux sous­programmes qui l’utilisent. C’est un "dommage 
collatéral",  et  les  variables  globales  ne  devraient  être  réservées  que  lorsque  celles­ci  sont  vraiment 
communes à la plus grande partie du code. 
q Il serait ridicule de déclarer toutes les variables en globales. La plupart des programmes et sous­programmes 
ne les utiliseraient pas toutes, et en plus vous risqueriez par accident, pensant à une variable locale, d’en 
modifier certaines sans y prendre garde, et ainsi de mettre en péril l’exécution du programme. 
q Comme  corollaire,  ne  donnez  jamais  le  même  nom  à  une  variable  locale  et  globale.  C’est  interdit  en 
algorithmique  et  dans  la  plupart  des  langages  qui  ne  manqueront  pas  de  vous  le  faire  remarquer  à  la 
compilation ou à l’exécution. 
c. Variables globales et Java 
En Java les variables globales se déclarent hors des blocs de programmes comme la méthode main() (programme 
principal)  et  les  méthodes.  Elles  sont  déclarées  tout  en  haut,  en  dessous  du  mot­clé  class.  Toutes  ces  variables 
seront visibles depuis n’importe quelle méthode ou programme principale au sein de cette "classe", voire même audelà car il est possible de préciser des niveaux de visibilité des variables. Tout ceci vous sera brièvement expliqué 
dans  le  dernier  chapitre.  En  attendant  ce  chapitre  et  un  surcroît  d’explications,  outre  le  type  de  la  variable  vous 
rajouterez le mot­clé "static » devant les variables. 
class chap6_globale { 
static char c; 
static int nbcar; 
 
static void RepeteCar() { 
 
int i ; 
 
for(i=1 ;i<=nbcar ;i++) System.out.print(c); 
 
System.out.println(); 
 
} 
 
 
public static void main(String[] args) { 
c=’*’; 
for(nbcar=1;nbcar<=10;nbcar++) RepeteCar(); 
} 
}
6. Les paramètres 
Maintenant que vous réservez les variables globales à des cas bien précis, il vous faut trouver un autre moyen de 
passer des valeurs aux procédures et aux fonctions. Quand en mathématiques vous calculez la valeur d’une fonction f
(x), vous lui demandez en fait de calculer la valeur de la fonction selon la valeur de x. Vous passez donc la valeur de x à 
la fonction. 
Le principe est le même avec vos algorithmes : vous pouvez transmettre des valeurs à vos procédures et fonctions, 
tout comme vous pouvez en recevoir. La syntaxe diffère légèrement entre les fonctions et les procédures pour cette 
raison. Dans les deux cas cependant, les paramètres se placent entre les parenthèses situées après leur nom. 
Les  paramètres  passés  à  un  sous­programme  sont  généralement  des  variables  locales  au  programme  ou  sousprogramme  l’appelant,  mais  ils  ne  portent  pas  forcément  le  même  nom.  Ils  sont  "récupérés"  au  sein  du  sousprogramme comme des variables locales au sous­programme. Il est cependant possible de passer comme paramètre 
toute  expression  retournant  une  valeur,  que  ce  soit  un  scalaire,  une  variable,  un  tableau,  un  enregistrement,  une 
table, ou encore une fonction (qui sera substituée par son résultat). 
a. Procédures 
La syntaxe de passage des paramètres est la suivante : 
- 7 -
© ENI Editions - All rigths reserved - Jonifar lina
130
Précédent

- 130/220

Suivant