Programmation orientée objet

Programming, Java, Object-Oriented Programming · course

Voir tous les documents en programmation

Programmation orientée objet

Chapitre 2 :

Présentation de l’environnement Java

Java est un langage interprété, ce qui signifie qu’un programme compilé n’est pas

directement exécutable par le système d’exploitation mais il doit être interprété par

un autre programme, qu’on appelle interpréteur. La figure ci dessous illustre ce

fonctionnement.

Un programmeur Java écrit son code source, sous la forme de classes, dans des

fichiers dont l’extension est « .java ». Ce code source est alors compilé par le

compilateur « javac » en un langage appelé « bytecode » et enregistre le résultat

dans un fichier dont l’extension est « .class ».

Publicité

Le bytecode ainsi obtenu n’est pas directement utilisable. Il doit être interprété par la

« machine virtuelle » de Java qui transforme alors le code compilé en code

machine compréhensible par le système d’exploitation. C’est la raison pour laquelle

le même quelque soit

Java est un

l’environnement d’exécution.

langage portable :

le bytecode reste

8

Chiheb-Eddine Ben N’Cir

Programmation orientée objet

Publicité

Compilation

La compilation s’effectue par la commande « javac » suivie d’un ou plusieurs nom

de fichiers contenant le code source de classes Java. Par exemple, « javac

MyProg.java » compile la classe « MyProg » dont le code source est situé dans le

fichier « MyProg.java ». La compilation nécessite souvent la précision de certains

paramètres pour s’effectuer correctement, notamment lorsque le code source fait

référence à certaines classes situées dans d’autres répertoires que celui du code

compilé. Il faut alors ajouter l’option -classpath suivie des répertoires (séparés par

un « ; » sous Windows et « : » sous Unix) des classes référencées. Par exemple :

« javac -classpath /prog/exos1;/cours MyProg.java »

fichier nommé « MyProg.class » contenant

Publicité

compilera le fichier « MyProg.java » si celui-ci fait référence à d’autres classes

situées dans les répertoires « /prog/exos1 » et « /cours ». Le résultat de cette

compilation est un

le bytecode

correspondant au source compilé. Ce fichier est créé par défaut dans le répertoire où

la compilation s’est produite. Il est cependant fortement souhaitable de ne pas

mélanger les fichiers contenant le code source et ceux contenant le bytecode. Un

répertoire de destination où sera créé le fichier « MyProg.class » peut être précisé

par l’option « ----dddd », par exemple :

« javac -d /prog/exos1 -classpath /cours MyProg.java »

Interprétation

Publicité

Le bytecode obtenu par compilation ne peut être exécuté qu’à l’aide de l’interpréteur.

L’exécution s’effectue par la commande « java » suivie du nom de la classe à

exécuter (sans l’extension .class). Comme lors de la compilation, il se peut que des

classes d’autres répertoires soient nécessaires.

Il faut alors utiliser l’option « -classpath » comme dans l’exemple qui suit :

« java -classpath /prog/exos1;/cours MyProg »

9

Chiheb-Eddine Ben N’Cir