Académique Documents
Professionnel Documents
Culture Documents
java-intro
Originaux
url: http://tecfa.unige.ch/guides/tie/html/java-intro/java-intro.html url: http://tecfa.unige.ch/guides/tie/pdf/files/java-intro.pdf
Auteurs et version
Daniel K. Schneider - Vivian Synteta Version: 1.2 (modifi le 4/12/00 par VS)
Prrequis
Petites connaissances en programmation Module technique suppl.: java-util (explication des packages et classpath)
Modules
Module dexercices: act-java-intro Module technique suivant: java-jsp (Java server pages)
Internet et Education TECFA 4/12/00
java-intro-2
Module technique suivant: java-servl (Java servlets) Module technique suppl.: java-jhtml (pages Java actives, dmodes !!)
Objectifs
Notions de Java de base (pas de "comment insrer un applet dans un page html" !)
Internet et Education
TECFA 4/12/00
java-intro-3
3 4
4 5 6
8 11
11 17 19 20
5. Algorithmique de base
5.1 Instructions les plus importantes 5.2 Les types de donnes 5.3 Assignation, type cast et expressions simples 5.4 La rptition I: linstruction for 5.5 La slection (if/else) et les conditionnels 5.6 Lire des nombres 5.7 La rptition II (while) 5.8 Les exceptions simples 5.9 Classes et mthodes (encore une fois) 5.10 Arrays et Tables
21
21 22 23 24 25 27 28 30 32 34
Internet et Education
TECFA 4/12/00
java-intro-4
Internet et Education
TECFA 4/12/00
java-intro-5
Entrer du code
Dbut changer
PAS
Erreurs dexcution Erreurs logiques OK
OK Rsultats bons
Fin
Internet et Education
TECFA 4/12/00
java-intro-6
// Say hello!
System.out.println("Hello World!"); } // This marks the end of main() }
Internet et Education
TECFA 4/12/00
java-intro-7
Explications
Lapplication est dfinie par la classe Hello // sont des commentaires Le fichier doit sappeler Hello.java Chaque application doit dfinir une mthode main Compiler / Excuter: javac Hello.java java Hello Pour plus dinfos regarder: url: Your first cup of Java
Internet et Education
TECFA 4/12/00
java-intro-8
java-intro-9
Dfinition de la classe principale "Ring" Utilisation et largissement de la classe "systme" Frame (fentre)
class Ring extends Frame { } .....
Internet et Education
TECFA 4/12/00
java-intro-10
on cre un objet (instantiation) du type Frame avec la classe Ring et on utilise des mthodes de la classe Frame pour dfinir la taille et lafficher ... pour les dtails voir plus tard ! Dfinition de la mthode paint
public void paint (Graphics g) { ...}
implmente une mthode paint pour afficher le contenu du Frame; la mthode paint ncessite un argument de type Graphics "paint" est appele automatiquement quand le frame se cre la variable "g" instantie la classe Graphics Appel des mthodes de la classe Graphics
g.setColor (Color.yellow); g.drawOval (100,50,50,50); // Label the drawing g.drawString("LA bague !", 110,140);
Internet et Education
TECFA 4/12/00
java-intro-11
Exemples simples:
public class Hello {....... } public void paint (Graphics g) { .... }
Internet et Education TECFA 4/12/00
java-intro-12
A. Les constructeurs
Ce sont des mthodes spciales destines instantier les classes; ils portent le mme nom que la classe ! ils ne retournent aucun type (pas mme void); Exemple 4-1: Classe et constructeur simple
// Game est une classe class Game { } // Game {} est un constructeur Game MyGame = new Game {}
Internet et Education
TECFA 4/12/00
java-intro-13
main
enquiry
acacia noOfEnquiries
willow noOfEnquiries
palm noOfEnquiries
10
Objets (Instances)
Classes Objets Mthodes Valeurs
Internet et Education
TECFA 4/12/00
java-intro-14
java-intro-15
E. Simple Output
System.out.println imprime un string Notez que lon peut concatener strings et nombres pour crer un seul string:
System.out.println ("Number of enquiries for palm trees = " + palm.noOfEnquiries + "\nNumber of total enquiries = " + totalEnquiries );
Internet et Education
TECFA 4/12/00
java-intro-16
appelle (invoque) cette mthode sur lobjet palm qui a t cre une mthode est toujours attache un objet ou une classe.
Internet et Education
TECFA 4/12/00
java-intro-17
java-intro-18
A. Exemples:
Une mthode publique typique qui ne retourne rien:
public void paint (Graphics g) { ..... }
java-intro-19
Internet et Education
java-intro-20
Internet et Education
TECFA 4/12/00
java-intro-21
5. Algorithmique de base
Formule: Programme = structure de donnes + algorithmes Les algorithmes sont des instructions qui manipulent les donnes. Dans ce contexte on parle aussi de structures de contrle.
"tant que faire", boucler tant quune condition soit remplie "essayer" et si cela ne marche pas faire try autre chose calculer quelque chose, invoquer une expressions mthodes etc.
Internet et Education
TECFA 4/12/00
java-intro-22
Internet et Education
TECFA 4/12/00
java-intro-23
expression
java-intro-24
java-intro-25
Exemples
a = b;
Illustration:
if (thesecondstring.length() < thefirststring.length()) { System.out.println("The second string is shorter"); } else System.out.println("The second string is NOT shorter");
Internet et Education TECFA 4/12/00
java-intro-26
Internet et Education
TECFA 4/12/00
java-intro-27
java-intro-28
Illustration:
while (CurrentNumber.length()!=0) { TheSum = TheSum + (new Integer(CurrentNumber)).intValue(); CurrentNumber=in.readLine(); }
Internet et Education
TECFA 4/12/00
java-intro-29
java-intro-30
NumberFormatException
Illustration:
try { Integer TheNumber = new Integer(in.readLine()); System.out.println("The string you typed is a valid java number."); } catch (NumberFormatException e) { System.out.println("The string you typed is not a valid java number."); }
Internet et Education TECFA 4/12/00
java-intro-31
Internet et Education
TECFA 4/12/00
java-intro-32
java-intro-33
String Palindromize1 (String AString) { if (AString.length() < 2) { return AString; } else { // return the palindromized (2-last element) + 1st char return Palindromize1(AString.substring(1)).concat(AString.substring(0,1)); } }
String Palindromize2 (String AString) { String ThePalindrome = new String(); for (int i = (AString.length() - 1); i >= 0; i--) { ThePalindrome = ThePalindrome.concat(AString.substring(i,i + 1)); } return ThePalindrome; } }
Internet et Education
TECFA 4/12/00
java-intro-34
java-intro-35
Internet et Education
TECFA 4/12/00
java-intro-36
Internet et Education
TECFA 4/12/00