cours1

publicité
Java
I. Introduction

Historique :
- Création au début des années 90 par l’entreprise SUN (aujourd’hui rachetée par Oracle)
- A l’origine langage OAK, plus simple que le C et plus facilement exploitable, créé par
James Gosling
- En 95 intégration dans un navigateur et présenté lors d’une conférence qui conquis le
public et donna lieu à l’achat d’une première licence par Netscape.
C’est aussi l’année ou OAK devient Java
- En 96 sort Java 1.0 (aujourd’hui en version 7)

Règles de fabrication :
- création d’un fichier source (.java) dont le nom doit commencer par une majuscule
- compilation du fichier source
o elle ne produit pas de code machine (compréhensible par le processeur)
o elle produit un autre code appelé « byte-code » identique à toutes les machines
o on utilise pour cela la commande javac Exemple.java qui donnera le byte-code
Exemple.class
- interprétation du byte-code
o produit par la commande : java Exemple

Définition :
- le langage (règles d’écritures)
- les commandes
- les types "classes" ≅ 5000 (rt.jar)
Cela forme la plateforme java JSE (Java Standard Edition).
Remarque : il existe d’autres plateformes : JEE (Java Enterprise Edition) pour le web dynamique, JME
(Java Micro Edition) pour les systèmes embarqués
II. Exemples

programme simple : addition de deux nombres
public class Exemple {
plublic static void main (String [] args) {
int a,b,c;
a=10; b=15;
System.out.println(“le resultat est” + c);
}
}

programme d’addition avec saisie (boîte de dialogue)
import javax.swing.JOptionPane ;
public class Exemple {
public static void main(String [] args){
String rep;
int a,b,c;
rep = JOptionPane.showInputDialog(“Taper a”);
a = Integer.parseInt(rep);
rep = JOptionPane.showInputDIalog(“Taper b”);
b = Integer.parseInt(rep);
c = a + b;
JOptionPane.showMessageDialog(null, “le résultat est” + c );
System.exit(0) ;
}
}
RQ : les bibliothèques en Java sont appelées package et contiennent donc les classes, le principal est
java.lang elle est intégrée automatiquement. JOptionPane est dans le package javax.swing
III. Variables et types

2 catégories de variables :
o types primitif (équivaut à peu près à ce qui viens du C)








boolean (true / false, tiens sur un byte)
byte (1 byte)
short (2byte)
int (4 byte)
long (8 byte)
float (4 byte)
double (8 byte)
char (2 byte, UNICODE [256 caractères]), pour utiliser un autre caractère on
utilise char c = ‘\uXXXX’
où XXXX est le code hexa du caractère
Rq: à partir du moment qu’il y a un “.” le compilateur le considère comme un double,
du coup pour dire au compilateur de le considérer comme un float on rajoute f, ex :
float x = 1.2f
o
types classes (équivaut à peu près à ce qui vient de la POO)
(environ 5000 types ≈ pointeurs alloués)


pour créer une variable de type classe on la nomme : Type idvar ; et on lui
alloue un espace mémoire idvar = new Type (…), la libération de la mémoire
est gérée par la JVM.
Exemple : FileReader fr ; fr = new Filereader(“fic.html”);
Exemples de classes
o String
 “ “ = String
 chaînes de caractères non modifiable
 construction
String nom;
nom = new String();
nom = String (“abc”);
ou
String nom = new String (“def”);

ensemble de fonctions
String nom=”bonjour”;
nom.length()  7
nom.charAt(indice)
nom.substring(ind1, ind2) : donne la chaine entre ind1 et ind2 – 1
nom.toLowerCase (attention pour récupérer on éxécute donc nom =
nom.toLowerCase comme la chaîne String ne peux être modifiée)
nom.indexOf(« chaîne », position de départ [facultatif]) : renvoie la position
de la chaine
nom.lastIndexOf : recherche à partir de la droite
Integer.parseInt : transforme en int (marche avec tous les formats)
String.valueOf(nombre) : donne la valeur de la chaîne à cet indice.
o
String Buffer
Téléchargement