Ecrire "bravo"
Sachez dès maintenant que tout code Java est
placé dans des classes ou des interfaces. En dehors des
classes ou des interfaces, il y a uniquement des indications de
paquetage ou d'import sur lesquelles nous reviendrons.
Voici un code source pour un premier exemple. Certaines
parties commentées vont rester assez mystérieuses
pour l'instant. Il ne faut pas s'en inquiéter, le principal
est pour l'instant de réussir à compiler et
exécuter ce programme.
public class Bravo {
public static void main(String[] arg) {
System.out.println("bravo");
}
}
L'en-tête de la classe est ici :
class
Bravo
L'en-tête d'une classe est toujours suivie du corps de la
classe, corps qui est délimité comme on le voit
ci-dessus par des accolades (les accolades externes).
Ici, la classe Bravo contient uniquement une
méthode, la méthode main
(une méthode peut aussi être appelée
fonction). L'en-tête de cette méthode est :
public
static void main(String[] arg)
On dira que arg est un paramètre de la
méthode main ; ce paramètre
est de type String[], ce qui signifie qu'il
s'agit d'un tableau d'objets de type String (cela
sera revu plus tard).
L'en-tête d'une méthode est toujours suivie du
corps de la méthode (sauf pour une classe abstraite, vue
plus loin), corps qui est délimité comme on le
voit ci-dessus par des accolades (les accolades internes).
Ici, le corps de la méthode contient uniquement la ligne :
System.out.println("bravo");
Une telle ligne s'appelle une instruction. Les
instructions se terminent toujours pas des points-virgules.
Lorsqu'on exécute un programme, on
exécute toujours la suite des instructions d'une
méthode nommée main.
L'en-tête de la méthode main
est toujours identique à celle de la méthode
utilisée ici, à part pour le mot arg
qui peut être remplacé par un autre identificateur
(liste, argv,...).
On obtient à l'exécution, avec notre
programme :
bravo
Voyons comment arriver à l'exécution de ce
programme.
Premier cas : vous travaillez directement sur une console
(fenêtre d'exécution)
- Le code source doit être écrit dans un
fichier avec un éditeur de texte non formaté
(emacs, autre éditeur reconnaissant
éventuellement le langage Java) ; ce fichier doit
nécessairement avoir l'extension .java.
Le mieux est ici de le nommer Bravo.java
- Une fois le fichier sauvegardé, il faut le
compiler du répertoire où se trouve le fichier
source par la commande :
javac Bravo.java
ce qui crée un fichier Bravo.class ;
ce fichier contient le bytecode de la classe Bravo,
il y création d'un fichier d'extension .class
pour chaque classe compilée ;
- On peut maintenant exécuter le programme par la
commande java suivie du nom de la classe qui
contient la méthode main :
java Bravo
Second cas : vous utilisez un environnement de programmation,
les explications concernent plus précisément
Eclipse
Après avoir ouvert Eclipse :
- Créer un nouveau projet par le menu File (new,
puis Project puis Java Project, puis nommer, par exemple par premier, le projet, puis finish).
- Créer un nouvelle classe : cliquer avec le bouton de
droite sur le nom du projet qui doit apparaître dans
une partie gauche de la fenêtre Eclipse ;
dans le sous-menu obtenu, choisir avec le bouton de gauche new ,
puis Class dans le nouveau sous-men ; dans la fenêtre
obtenue, nommer la
classe, sans extension, puis finish ;
- Taper le code ;
- Dans le menu Run, choisir "run as" ; une fenêtre apparaît ; indiquer qu'il s'agit
de "java application" ; donner un nom à votre application, rappeler le nom de votre projet (premier, si c'était votre choix), précisez le nom de la classe contenant la méthode main (ici Bravo) puis cliquer sur Run.
Eclipse est très riche, il reste beaucoup à
connaître pour bien l'utiliser, cela viendra facilement au fur et à mesure de son utilisation.
Pour accéder directement au programme.
Vous pouvez faire l'exercice : Écrire le premier
argument de la ligne de commande
public static
: ces mots seront expliqués plus tard.
String
: il s'agit d'une classe définie dans l'API, dans le
paquetage java.lang. Ainsi, la méthode
main a pour paramètre un tableau de
chaînes de caractères. Sera revu plus tard.
System
: classe du paquetage java.lang qui fournit
quelques fonctionnalités systèmes, de
façon indépendante de la plate-forme.
out
: objet, attribut statique de la classe System de type java.io.PrintStream
servant à faire des sorties à l'écran
(sera éclairée plus tard).
println("bravo")
: on utilise ainsi une méthode de l'objet out
qui écrit la chaîne de caractères
indiquée dans les parenthèses qui suivent puis
passe à la ligne. Il existe aussi la méthode printqui
écrit la chaîne mais ne passe pas à
la ligne . Les guillemets autour de bravo indiquent qu'il s'agit d'une
chaîne de caractères. Vous pouvez essayer de remplacer par
la méthode print,
vous constaterez que cela
ferait que la chaîne de caractères ne sera pas ici
écrite à l'écran ; elle resterait dans
un tampon d'écriture ; c'est un
détail. Vous pouvez aussi essayer de faire écrire avec println une phrase à la place du mot bravo.
Il
est impératif de vérifier que vous savez faire
tourner ce petit programme sur un ordinateur.
© Charon Irène
Télécom ParisTech 2012