Java débutant

Transcription

Java débutant
Java débutant
Qua faire quand j'arrive en TP ?
Compilation
• Le compilateur traduit le programme écrit en programme
source Java en programme exécutable par la machine
Programme source .java
COMPILATEUR
Programme exécutable par le
processeur sur la machine
En Java
• C'est un peu différent
• Le compilateur convertit le programme source en un
programme exécutable sur une « machine virtuelle »
Programme source .java
COMPILATEUR
Programme exécutable par le
processeur sur la machine virtuelle
INTERPRTE
Programme exécutable par le
processeur sur la machine réelle
JAVA : write once, run
anywhere
• La compilation d'un programme ne génère pas d'instructions
spécifiques pour la machine sur laquelle vous travaillez
• Mais du bytecode Java, qui sont des instructions pour la
machine virtuelle Java (JVM)
• Ce qui signifie que si vous disposez d'une JVM (Windows,
Unix, Android, IOS, navigateur internet,…), elle peut exécuter
le bytecode
Principe JVM
Notre environnement java
• javac : le compilateur java
• java : l'interprète de la machine virtuelle java
• L'écosystème Java est beaucoup plus large
Notre première application
Java
Le programme affiche « Hello World ! »
1) Créer un fichier source Hello.java
Ce fichier contient le code écrit en Java
2) Compiler le source en fichier bytecode Hello.class
Cette compilation est réalisée par l'intermédiaire du
compilateur javac. Le fichier Hello.class contient du bytecode
exécutable sur la JVM
3) Appeler la machine virtuelle JVM pur exécuter le bytecode
L'interprète traduit le bytecode en instructions exécutables par
votre machine
Comment réaliser ces
étapes
1. Création du fichier
Utilisation d'un éditeur (emacs, Notepad++,…)
2. Compilation du fichier en bytecode
Utilisation du compilateur javac
3. Exécution du programme par appel de la JVM
Utilisation de la commande java
Note : ces trois étapes peuvent être réalisées par un unique outil
comme eclipse ou Netbeans
Fichier Hello.java
public class Hello {
public static void
main(String [] args){
System.out.println("Hello
World:");
// Affichage du texte
}
Compilation et exécution
• Compiler le fichier source
javac Hello.java
Si et seulement si la compilation réussit (vous n'aurez aucun
message d'erreur), un fichier Hello.class est créé
• Interpréter et exécution l'application
java Hello
Attention : pas de java Hello.class ou java Hello.java
Écosystème java
Pour informations
• javac : le compilateur java
• java : l'appel à la JVM
• javadoc : convertit le code en documentation HTML (très utile)
• appletviewer : permet d'exécuter des applets sans passer par
un navigateur
• jdb : debugger java
• jar : système d'archivage java
• javah : permet l'utilisation de code java en C
• ...
Inspection de notre
programme
• définition d'une classe
• Brique de base d'un langae orienté-objet (cf plus tard)
• Le nom de la classe débute obligatoirement par une
majuscule
public class Hello {
public static void
main(String [] args){
System.out.println("Hello
World:");
// Affichage du texte
}
La méthode main (...)
• Le point d'entrée dans le programme est la méthode main (…)
– appelée en premier par la JVM
– le nom du fichier source est celui de la classe qui contient la méthode
main
public class Hello {
public static void
main(String [] args){
System.out.println("Hello
World:");
// Affichage du texte
}
Utilisation d'une métjode
• La classe System fournit des accès à des fonctionnalités
comme l'affichage ou l'heure, la date…
• A voir sur
https://docs.oracle.com/javase/8/docs/api/java/lang/System.ht
ml
public class Hello {
public static void
main(String [] args){
System.out.println("Hello
World:");
// Affichage du texte
}
Documentation JAVA
• utiliser la documentation Java est un point important pour la
compréhension du langage
•
Conventions d'écriture en
JAVA
• TRES TRES IMPORTANT
• classe MonPremierProgramme
• méthode commence toujours par une minuscule
– écrireNom()
– getNom() (appelées geters)
– setNom(« toto ») (appelées seters)
• Variables ou attributs
– monNom, monPrénom
• Constantes en MAJUSCULES
– NOMBRE_ETUDIANTS
• Respectez ces conventions dans ce cours (première loi)