|
Qu'est-ce
que le Java Development Kit
La première chose
à faire est de créer un simple fichier texte
(sans mise en forme) et de taper les quelques lignes suivantes:
// Votre premiere application en Java
class FirstApp {
public static void main (String[] args){
System.out.println("Hello World");
}
}
Etant donné que l'on
a donné le nom de FirstApp à notre programme,
il est essentiel de sauver ce fichier sous le nom FirstApp.java
(un autre nom provoquera une erreur lors de la compilation).
A l'aide du JDK (ou d'un environnement de développement
Java intégré) compilez le programme en vous
plaçant, sous une fenêtre DOS (en supposant que
vous êtes sous un environnement Microsoft), grâce
à la commande suivante:
javac FirstApp.java
Si tout se déroule normalement, le
compilateur devrait créer un fichier nommé FirstApp.class.
dans le cas contraire, vous avez soit une erreur dans votre
programme (vérifiez la syntaxe) ou bien vous avez mal
installé le JDK...
En supposant que le JDK a été
installé correctement et que la syntaxe de votre programme
est bonne, vous pouvez désormais exécuter votre
programme grâce à la machine virtuelle Java,
en tapant la commande suivante:
java FirstApp
|
Il ne faut pas spécifier
l'extension (.class) au risque d'obtenir une erreur
!
Pour passer des arguments lors de l'exécution, il suffit
de préciser ces arguments après le nom du fichier :
java NomFichier arg1 arg2 ...
Si il y a plusieurs arguments, ceux-ci
doivent être séparés par au moins un espace. |
Le programme devrait en toute
logique afficher le message "Hello World" à
l'écran. Cela est bien peu, mais constitue un bon début
pour analyser le programme. Voyons ligne par ligne comment
est constitué cette application:
- La première ligne
// Votre premiere application en Java
est une ligne de commentaire permettant
d'ajouter des remarques sur l'application
- La seconde ligne
class FirstApp {
définit la classe principale
de votre application grâce au mot clé class.
Le nom que vous donnez à cette classe représente
le nom de votre programme, cela signifie qu'une application
Java possède au moins une classe, et que celle-ci
possède un nom correspondant au nom du programme.
Puisque Java est sensible à la casse, le nom que
vous donnez au programme doit être rigoureusement
le même que celui que vous donnez au fichier portant
l'extension .java
La seconde ligne se termine par une accolade ouvrante "{",
correspondant au début d'un bloc, c'est-à-dire
un ensemble de lignes de codes correspondant à la
classe et délimité par deux accolades
- La troisième ligne
public static void main (String args[]){
définit la méthode principale
de l'application, c'est-à-dire une procédure
propre à la classe est exécutée lors
de son appel. Le mot clé void précédant
la méthode main() indique le type de retour
de la fonction, c'est-à-dire le type de valeur que
la méthode doit retourner. Dans le cas présent,
il s'agit du type void (signifiant rien en
anglais), donc la méthode ne doit retourner aucune
valeur. Les parenthèses suivant le mot main
permettent de définir les paramètres de la
méthode, c'est-à-dire les données qu'elle
reçoit en entrée. Dans cette application (et
dans toutes vos futures applications) le paramètre
est String args[], ce qui correspond à un
ensemble (tableau) de chaînes de caractères.
Cela correspond en réalité aux paramètres
que vous placez après la ligne javac FirstApp.class,
si, par exemple, vous voulez pouvoir préciser des
options lors de l'exécution de votre application.
Vous rencontrerez parfois l'écriture String[]
args, cette écriture est juste elle aussi, voire
plus logique... (cela sera expliqué plus loin).
Enfin les mots clés public et static
définissent les caractéristiques de la méthode
main(). Le mot clé public définit
les classes pouvant exécuter la méthode main(),
public signifie donc que toutes les classes peuvent
y avoir accès. Or, l'interpréteur Java étant
"considéré comme une classe", il
est essentiel qu'il puisse y avoir accès afin de
lancer l'application... Comme dans le cas de la classe FirstApp,
la ligne déclarant la méthode main()
se termine par une accolade ouvrante indiquant un bloc correspondant
au corps de la méthode main()
- La quatrième ligne
System.out.println("Hello World");
- correspond au corps de la méthode
main(). Il s'agit de l'appel de la méthode
println(), possèdant un paramètre (une
chaîne de caractère). Cette méthode
permet d'afficher sur la sortie standard (ici, l'écran)
la chaîne de caractère qui lui est passée
en paramètre, en lui ajoutant automatiquement un
caractère de retour à la ligne (il existe
aussi une méthode appelée print(),
n'ajoutant pas de retour à la ligne). Cette méthode
est précédée de System.out.,
cela signifie qu'elle fait partie de l'objet out,
faisant lui-même partie de la classe System.
En réalité toutes les méthodes natives
de Java font partie d'objets, répartis dans une hiérarchie
de classes. Ainsi, la classe System fait partie de
la classe lang, qui fait elle-même partie de
la classe java. Toutefois, il n'est pas nécessaire
de préciser java.lang.System.out, car la classe
java.lang est la seule classe directement accessible
(celle-ci contient en effet les méthodes essentielles).
De cette façon, la ligne "System.out.println("Hello
World");" est équivalente à "java.lang.System.out.println("Hello
World");".
|
- Une application Java possède
au moins une classe
- Le nom de la classe correspond au
nom de l'application (avec la même casse, c'est-à-dire
orthographié de la même façon
aux majuscules près)
- Une application Java possède
une méthode main() déclarée
en public et en static
- Le paramètre de la méthode
main() peut s'écrire indifféremment
String args[] ou String[] args
|
Les applets sont différentes
des applications dans la mesure où il s'agit de petites
applications graphiques destinées à s'exécuter
dans un navigateur internet. D'autre part, les applets ont
un champ d'action limité pour des raisons de sécurité
puisqu'elles s'exécutent dans un environnement distant.
Elles ne peuvent donc pas accéder à toutes les
ressources de l'environnement distant (lecture/écriture
sur le disque par exemple).
Voici donc le code d'une applet
toute simple:
import java.awt.*;
public class FirstApplet extends java.applet.Applet {
public void init (){
add(new Label("Hello World"));
}
}
Le programme devrait en toute logique afficher
le message "Hello World" à l'écran sur
le navigateur, à condition de créer le fichier
HTML approprié "hébergeant" l'applet:
<HTML>
<BODY>
<APPLET code="FirstApplet.class" width="100" height="30" align="left">
Message s'affichant si l'applet n'est pas supportée par le navigateur
</APPLET>
</BODY>
</HTML>
Pour visualiser l'applet, il vous suffit
donc d'enregistrer ce fichier avec l'extension .htm ou
.html, comme par exemple FirstApplet.htm.
Pour l'exécuter vous
pouvez:
L'exécution de cette
applet devrait donner un résultat comme celui-ci:
Voyons ligne par ligne comment
est constitué cette applet:
Voici donc deux exemples d'application
et d'applet permettant d'avoir un aperçu de ce à
quoi peut ressembler un programme Java (qu'il soit une application
ou une applet). La section suivante présente les primitives
du langage Java, c'est-à-dire les briques élémentaires
pouvant être utilisées dans une classe...
 
|