Exercice 1 : Hello World !
But
Toucher à toute la chaîne de développement d'un programme
Java, étudier grossièrement la structure d'un programme très
simple, la documentation en ligne, l'outil de développement, etc...
Travail à faire
Ecrire l'incontournable "Hello World", sous forme d'application,
mais aussi d'applet., puis l'améliorer.
Voici le source de l'application HelloWorld :
import java.io.*;
public class HelloWorld {
public static void main(String argv[]) {
System.out.println("Hello World\n");
}
}
Copier/Coller ce bout de code et le compiler à l'aide de la commande
: javac HelloWorld.java.
Remarque : si vous disposez d'un outil intégré,
créez un projet, ajoutez lui un fichier HelloWorld.java, éditez
le fichier HelloWorld.java (vide) copiez le code dans la fenêtre
de l'éditeur. Compilez ensuite.
L'exécuter à l'aide de la commande : java HelloWorld
, ou faites "exécuter le projet" si dans vore IDE.
Voici le source de l'applet HelloWorldApplet :
import java.awt.Graphics;
import java.applet.Applet;
public class HelloWorldApplet extends Applet {
public void paint(Graphics g) {
g.drawString("Hello world!", 50, 25);
}
}
Copier/Coller ce bout de code et le compiler à l'aide de la commande
: javac HelloWorldApplet.java
L'exécution n'est pas aussi simple que pour une application.
Il faut impérativement construire une page HTML contenant un tag
<APPLET CODE=nom de la classe HEIGHT=... WIDTH=...> </APPLET>
Source de la page HelloWorldApplet.html :
<HTML>
Ici se trouve notre applet :<P>
<APPLET CODE="HelloWorldApplet.class" width=150 height=25>
Votre Browser ne permet pas de visualiser les applets Java<P>
</APPLET>
</HTML>
Pour exécuter : appletviewer HelloWorldApplet.html, ou utiliser
Netscape (déconseillé pendant la phase de test).
Possesseurs d'IDE : normalement, l'appletviewer doit se lancer tout seul.
Améliorations :
Dans le même fichier, créez une classe Message qui va posèder
un constructeur Message(String msg), et deux méthodes String get()
et void set(String msg) permettant respectivement d'obtenir la valeur d'un
message et de la modifier. Instanciez un ou plusieurs objets de cette classe
dans la méthode main() de l'application HelloWorld et utilisez les
méthodes de sa classe pour afficher et modifier le message "Hello World".
Maintenant, mettez la classe Message dans un autre fichier. Comment
doit-il s'appeler ? Compilez et testez !
Exercice 2 : on se familiarise un peu meiux avec
les concepts objets du langage
Travail à effectuer
Cette fois-ci vous allez écrire une petite application Java
necessitant une analyse un peu plus poussée que celle de l'exercice
1.
Vous réaliserez la maquette d'un outil permettant de passer des
commandes pour des fournitures de bureau. Ces articles pouront être
de types divers, représentés sous la forme d'objets dans
l'application.
Caractéristiques de l'application :
-
Les articles sont de type stylo ou ramette de papier,
-
Un stylo est décrit par sa marque, sa référence, son
prix unitaire et sa couleur,
-
Une ramette de papier est décrite par sa marque, sa référence,
son prix unitaire et le grammage du papier (en grammes par métre
carré),
-
Une commande associe un nom de client à une liste de
couples (article, quantité commandée).
-
En outre, dans le cas de grosses commandes, prévoyez de regrouper
des articles en Lots (par exemple : 100 crayons) le prix d'un lot
tant égal à la quantité multipliée par le prix
unitaire cd chaque article moins 10%.
A vous de concevoir l'arborescence des classes nécessaires à
cette application. Gardez bien à l'esprit que de nouveaux articles
doivent pouvoir se greffer dans l'application sans que l'on doive récrire
tout le code.
N'oubliez pas d'écrire une classe TestCommande comportant
une méthode Main(), qui créée une commande fictive,
ajoute des articles, en enlève, affiche le contenu de la commande
et le prix total par exemple.
Notes relatives à l'implémentation
-
Pensez à coder proprement en mettant une classe par fichier, à
bien protéger les objets ne nécessitant pas d'être
exposés (attributs privés, méthodes publiques, méthodes
privées protégées, etc...)
-
Dans un premier temps cette application ne sera pas graphique, une fois
que vos classes fonctionneront correctement, vous pourrez rajouter une
interface graphique.
-
Utilisez la classe Vector du package Java.utils pour gérer
une liste d'Objets. Vous verrez, cette classe est très pratique.
Correction de l'exercice
Une fois l'exercice terminé, vous pourrez télécharger
la correction !