SlideShare une entreprise Scribd logo
Chapitre 7 : Les Classes de bases de JAVA




                    MASTER PROFESSIONNEL
   NOUVELLES TECHNOLOGIES DES TELECOMMUNICATIONS ET RESEAUX
                            (N2TR)



                                  Cours JAVA © FST
                             Les Classes de bases de JAVA




Objectif :

       Ce chapitre vous permettra d’identifier les classes de base du langage
       à traves des exemples et de pouvoir les manipuler.




                                                                                1
Riadh BOUHOUCHI
Chapitre 7 : Les Classes de bases de JAVA


Sommaire
Les classes dans le package java.lang : .................................................................................................... 3
       Comme nous l’avons déjà dit ces classes sont l’ensemble des classes de base importées
       automatiquement par le compilateur. ............................................................................................ 3
   La classe Object : ................................................................................................................................. 3
       La méthode getClass() : ................................................................................................................... 3
       La méthode toString() : ................................................................................................................... 3
La classe String : ...................................................................................................................................... 4
La classe StringBuffer : ............................................................................................................................ 5
La classe System : .................................................................................................................................... 6
   Les flux d'entrée/sortie standard : ...................................................................................................... 6
La classe Integer : ................................................................................................................................... 7
La classe Math ......................................................................................................................................... 8
La classe Runtime : .................................................................................................................................. 8
Les classes du package java.util :............................................................................................................. 9
La classe StringTokenizer :....................................................................................................................... 9
La classe Random : ................................................................................................................................ 10
La classe Date : ...................................................................................................................................... 10




                                                                                                                                                              2
Riadh BOUHOUCHI
Chapitre 7 : Les Classes de bases de JAVA




Dans cette partie on se propose de présenter quelques classes de base en JAVA fournies avec
la machine virtuelle.



Les classes dans le package java.lang :

Comme nous l’avons déjà dit ces classes sont l’ensemble des classes de base importées
automatiquement par le compilateur.


La classe Object :

C'est la super classe de toutes les classes Java : toutes ces méthodes sont donc héritées par
toutes les classes.


La méthode getClass() :


La méthode getClass() renvoie un objet de la classe Class qui représente la classe de l'objet.

Avec cet exemple on peut connaitre le nom d’une classe :


                    String nomClasse = monObject.getClass().getName();




La méthode toString() :


La méthode toString() de la classe Object renvoie le nom de la classe , suivi du séparateur @,
lui même suivi par la valeur de hachage de l'objet.

La méthode equals() :

La méthode equals() implémente une comparaison par défaut. Sa définition dans Object
compare les références : donc obj1.equals(obj2) ne renverra true que si obj1 et obj2 désignent
le même objet. Dans une sous classe de Object, pour laquelle on a besoin de pouvoir dire que
deux objets distincts peuvent être égaux.

La méthode clone() :

Si x désigne un objet obj1, l'exécution de x.clone() renvoie un second objet obj2, qui est une
copie de obj1 : si obj1 est ensuite modifié, obj2 n'est pas affecté par ce changement.

                                                                                                 3
Riadh BOUHOUCHI
Chapitre 7 : Les Classes de bases de JAVA




La classe String :

Une chaîne de caractères est contenue dans un objet de la classe String

On peut initialiser une variable String sans appeler explicitement un constructeur : le
compilateur se charge de créer un objet.

Voici un exemple de déclaration :



                          String Chaine = "bonjour";
                          String Chaine = new String("bonjour");




Voici un exemple de comparaison entre deux chaines en utilisant la méthode equals :



                   String chaine = "bonjour";
                   String chaine1 = "bonjour";
                   String chaine1 = "bonjour1";

                   if(chaine.equals(chaine1))//cette instruction permet de
                   //comparer le contenu des deux chaines
                   {
                           System.out.println(“ les deux chaines de caracteres
                           sont identiques") ;
                   }




La classe String possède de nombreuses méthodes dont voici les principales :

Méthodes                                      Rôle
charAt(int)                                   renvoie le n éme caractère de la chaine

compareTo(String)                             compare la chaîne avec l'argument
concat(String)                                ajoute l'argument à la chaîne et renvoie la
                                              nouvelle chaîne

                                                                                            4
Riadh BOUHOUCHI
Chapitre 7 : Les Classes de bases de JAVA


endsWith(String)                             ajoute l'argument à la chaîne et renvoie la
                                             nouvelle chaîne
equalsIgnoreCase(String)                     compare la chaîne sans tenir compte de la
                                             casse
indexOf(String)                              renvoie la position de début à laquelle
                                             l'argument est contenu dans la chaine
lastIndexOf(String)                          renvoie la dernière position à laquelle
                                             l'argument est contenu dans la chaine
lenght()                                     renvoie la longueur de la chaine
replace(char,char)                           renvoie la chaîne dont les occurrences d'un
                                             caractère sont remplacées
startsWith(String int)                       Vérifie si la chaîne commence par la sous
                                             chaîne
substring(int,int)                           renvoie une partie de la chaine

toLowCase()                                  renvoie la chaîne en minuscule
toUpperCase()                                renvoie la chaîne en majuscule
trim()                                       enlève les caractères non significatifs de la
                                             chaine



La classe StringBuffer :

Les objets de cette classe contiennent des chaines de caractères variables, ce qui permet de les
agrandir ou de les réduire.

Cet objet peut être utilisé pour construire ou modifier une chaîne de caractères chaque fois
que l'utilisation de la classe String nécessiterait de nombreuses instanciations d'objets
temporaires.

Par exemple, si str est un objet de type String, le compilateur utilisera la classe StringBuffer
pour traiter la concaténation de "abcde"+str+"z" en générant le code suivant :


           new StringBuffer().append("abcde").append(str).append("z").toString();




Ce traitement aurait pu être réalisé avec trois appels à la méthode concat() de la classe String
mais chacun des appels aurait instancié un objet StringBuffer pour réaliser la concaténation,
ce qui est couteux en temps exécution.

La classe StringBuffer dispose de nombreuses méthodes qui permettent de modifier le
contenu de la chaîne de caractère et voici un exemple :




                                                                                                   5
Riadh BOUHOUCHI
Chapitre 7 : Les Classes de bases de JAVA




              public class MettreMaj {

              static final String lMaj = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
              static final String lMin = "abcdefghijklmnopqrstuvwxyz";

              public static void main( String[] args) {

                     System.out.println(MetMaj("chaine avec MAJ et des min"));
              }

              public static String MetMaj(String s) {

                     StringBuffer sb = new StringBuffer(s);

                     return toUpperCase(sb).toString();

                     }


              }




La classe System :

Cette classe possède de nombreuses fonctionnalités pour utiliser des services du système
d'exploitation.


Les flux d'entrée/sortie standard :

La classe System définit trois variables statiques qui permettent d'utiliser les flux
d'entrée/sortie standards du système d'exploitation.

      La variable in est de type PrintStream :

            elle permet de gérer l’entrée standard du système.
            Par défaut, c'est le clavier.

      La variable out est de type InputStream :

            C’est la sortie standard du système.
            Par défaut, c'est le moniteur.

      La variable err est de type PrintStream :

                                                                                           6
Riadh BOUHOUCHI
Chapitre 7 : Les Classes de bases de JAVA



                 C’est la sortie standard des erreurs du système.
                 Par défaut, c'est le moniteur.

 Exemple en utilisant System.out :

                                 System.out.println("salut");




 Voici un exemple de quelques méthodes de la classe System :


méthode                                           rôle
arraycopy(Object src, int src_position,           Copie un tableau à partir de la matrice source
Object dst, int dst_position, int length)         spécifiée, commençant à la position spécifiée, à
                                                  la position spécifiée du tableau de destination.
currentTimeMillis()                                Renvoie l'heure courante en millisecondes.
exit(int status)                                  Renvoie l'heure courante en millisecondes.
gc()                                              Exécute le garbage collector.
getProperty(String key)                           Obtient la propriété système indiqué par la clé
                                                  spécifiée.




 La classe Integer :

 La classe Integer encapsule une valeur du type int primitive dans un objet. L’objet de type
 Integer contient un seul champ dont le type est int.

 Voici quelques méthodes de la classe Integer :

  Méthode                                         Rôle
  byteValue()                                     Retourne la valeur de cet entier comme un
                                                  octet
  equals(Object obj)                              Compare un objet par rapport à un autre
  hashCode()                                      Retourne le hashcode de l’entier
  intValue()                                      Retourne la valeur de l’entier avec un type
                                                  int
  longValue()                                     Retourne la valeur de l’entier avec un type
                                                  long
  parseInt(String s)                              Convertie une chaine en un entier decimale




                                                                                                     7
 Riadh BOUHOUCHI
Chapitre 7 : Les Classes de bases de JAVA




Voici un exemple d’utilisation de la méthode parseInt(String s) :


           public Boolean isInteger(String a)
             {
               try{
                  int i=Integer.parseInt(a);
                  }
               catch(Exception e){
                   return false;
                  }
               return true;
             }



Cette méthode retourne une valeur booléenne true si la chaine a est un entier ou false dans le
                                      cas contraire.




La classe Math

Cette classe contient des méthodes pour effectuer des opérations numériques de base.
Nous proposons dans cet exemple quelques méthodes :


        Méthode                                 Rôle
        abs(int a)                              Retourne la valeur absolu de d’un
                                                entier
        max(int a, int b)                       Retourne la valeur maximum entre
                                                deux entiers
        min(int a, int b)                       Retourne la valeur minimum entre
                                                deux entiers




La classe Runtime :

La classe Runtime permet d'interagir avec le système dans lequel l'application s'exécute :
obtenir des informations sur le système, arrêt de la machine virtuelle, exécution d'un
programme externe.

                                                                                                 8
Riadh BOUHOUCHI
Chapitre 7 : Les Classes de bases de JAVA




Méthode                                         Rôle
totalMemory()                                   permet d'obtenir la quantité totale de la
                                                mémoire.
freeMemory()                                    permet d'obtenir et la quantité de mémoire
                                                libre.



Les classes du package java.util :

Ce package contient un ensemble de classes utilitaires : la gestion des dates (Date et
Calendar), la génération de nombres aléatoires (Random), la gestion des collections
ordonnées ou non tels que :

      la table de hachage (HashTable),
      le vecteur (Vector),
      la pile (Stack) ...,
      la gestion des propriétés (Properties), des classes dédiées à l'internationalisation
       (ResourceBundle, PropertyResourceBundle, ListResourceBundle) etc ...



La classe StringTokenizer :

Cette classe permet de découper une chaîne de caractères (objet de type String) en fonction de
séparateurs.
Le constructeur de la classe accepte 2 paramètres : la chaîne à décomposer et une chaîne
contenant les séparateurs.


             import java.util.*;

             class test9 {

             public static void main(String args[]) {

                     StringTokenizer st = new
                     StringTokenizer("chaine1,chaine2,chaine3,chaine4",",");

                     while (st.hasMoreTokens())
                       {
                       System.out.println((st.nextToken()).toString());
                       }
                     }

              }


                                                      Resultas :
                                                       chaine1
                                                       chaine2
                                                       chaine3
                                                       chaine4                                   9
Riadh BOUHOUCHI
Chapitre 7 : Les Classes de bases de JAVA



Remarques :

      La méthode hasMoreTokens() fournit un contrôle d'itération sur la collection en
       renvoyant un booleen indiquant s’il reste encore des éléments.
      La méthode getNextTokens() renvoie le prochain élément sous la forme d'un objet
       String


La classe Random :

La classe Random permet de générer des nombres pseudo−aléatoires. Après l'appel au
constructeur, il suffit d'appeler la méthode correspondante au type désiré.
Voici quelques méthodes :
Méthode                                           rôle
next(int )                                        Retourne un entier au hazard
nextLong( )                                       Retourne un nombre pseudo−aléatoires de
                                                  type Long
nextFloat( )                                      Retourne un nombre pseudo−aléatoires de
                                                  type Float


La classe Date :
La classe Date permet de manipuler les dates.
Voici un exemple qui permet de récupérer l’heure et la date du système d’exploitation.
          import java.util.*;
          import java.text.SimpleDateFormat;
          import java.lang.String;

          class DateSysteme{
             public static void main(String args[])
             {

                  Date localTime = null;

                  localTime = new Date();
                  SimpleDateFormat sdf = new SimpleDateFormat("hh_mm_ss");
                  StringBuilder sb = new StringBuilder(sdf.format(localTime));
                  String actualHeure = String.valueOf(sb);

                  System.out.println(actualDate);

                  SimpleDateFormat sdf1 = new SimpleDateFormat("dd_MM_yyyy");
                  StringBuilder sb1 = new StringBuilder(sdf1.format(localTime));
                  String actualDate = String.valueOf(sb1);

                  System.out.println(actualDate);



              }
          }



                                                                                            10
Riadh BOUHOUCHI

Contenu connexe

PDF
JAVA Chapitre6
PDF
JAVA Chapitre8
PPTX
Introduction a Java
PPTX
Cours de JAVA de base
PDF
Cours java
PPTX
PPT
Cours java smi 2007 2008
PDF
Chapitre 3 elements de base de java
JAVA Chapitre6
JAVA Chapitre8
Introduction a Java
Cours de JAVA de base
Cours java
Cours java smi 2007 2008
Chapitre 3 elements de base de java

Tendances (20)

PDF
La programmation modulaire en Python
DOCX
Améliorations dans Java depuis la version 5
PDF
Chapitre 2 classe et objet
PDF
Chapitre 5 classes abstraites et interfaces
PDF
Exceptions
PDF
Chapitre 4 heritage et polymorphisme
PDF
Chap3 programmation modulaire en python
PPTX
Chapitre1: Langage Python
PDF
Introduction java
PDF
PDF
Chapitre 11: Expression Lambda et Référence de méthode en Java
PDF
Chapitre 1 introduction generale
PDF
Chapitre 2: String en Java
PPTX
Polymorphisme
PPTX
Language java
PDF
Programmation des Threads en java
PPTX
Multithreading
PDF
Cours java avance avancé thread arraylist
PDF
JAVA Chapitre4
PDF
La programmation modulaire en Python
Améliorations dans Java depuis la version 5
Chapitre 2 classe et objet
Chapitre 5 classes abstraites et interfaces
Exceptions
Chapitre 4 heritage et polymorphisme
Chap3 programmation modulaire en python
Chapitre1: Langage Python
Introduction java
Chapitre 11: Expression Lambda et Référence de méthode en Java
Chapitre 1 introduction generale
Chapitre 2: String en Java
Polymorphisme
Language java
Programmation des Threads en java
Multithreading
Cours java avance avancé thread arraylist
JAVA Chapitre4
Publicité

En vedette (20)

PPTX
Mediadaten der GFM Nachrichten
PPT
Observance fiscale: Quels défis pour les organismes de bienfaisance. Jean-Pau...
PDF
Thomas Keup Die Moralische Falle
PPT
Gamingkultur in Asien - Lernkultur in Deutschland - v2
PDF
Infographies FFTélécoms - étude Greenwich
PPSX
PDF
Slideshare - 3 files
ODP
La brujula
PPS
Humour politique
PDF
Rapport orientation unapei-2012-2013
ODP
Trabajo sociales
DOCX
CV OF MOYO 1
PPS
Terrain Gen3D
PDF
ahmed rahmouni -la justice transitionnelle est l affaire de la societe civile...
PDF
La marque, productrice de contenu: mode cocréation
PDF
Ausgabe 10 2014
PPT
Patient 1
PPS
J accuse le gvnt
PDF
10 convictions sur les MOOC par Cécile Dejoux à HR Speaks 2014
PPT
Présentation ereputation csm auray 28 juin 2012
Mediadaten der GFM Nachrichten
Observance fiscale: Quels défis pour les organismes de bienfaisance. Jean-Pau...
Thomas Keup Die Moralische Falle
Gamingkultur in Asien - Lernkultur in Deutschland - v2
Infographies FFTélécoms - étude Greenwich
Slideshare - 3 files
La brujula
Humour politique
Rapport orientation unapei-2012-2013
Trabajo sociales
CV OF MOYO 1
Terrain Gen3D
ahmed rahmouni -la justice transitionnelle est l affaire de la societe civile...
La marque, productrice de contenu: mode cocréation
Ausgabe 10 2014
Patient 1
J accuse le gvnt
10 convictions sur les MOOC par Cécile Dejoux à HR Speaks 2014
Présentation ereputation csm auray 28 juin 2012
Publicité

Similaire à JAVA Chapitre7 (20)

PDF
Part1
PPTX
Java - Support etudiant - Tronc Commun Deuxième année ISIMA - 2018
PPT
Java PROGRAMATION CLASSE INFORMATIQUE.ppt
PDF
Les chaines de a à Z, de String à StringTemplate.pdf
PDF
Les bases du langage java
PPTX
java_partie3jGZDYSDJ.VQZSVCJVJWXCDDS.pptx
PPTX
java_partie3kzjhkzuefb;hbjhbefhbb,nwb.pptx
PDF
Memo java
PDF
cours java complet-2.pdf
PPT
Les bases du java
PPTX
Les chaines de test test test test test caractères.pptx
PDF
Java1_BasesLangage.pdf
PDF
Java1_BasesLangage.pdf
PDF
Poly basesjavahm
PDF
Les nouveautés de Java 19, 20 et 21 - RivieraDev 2023
PDF
"Input/Ouput, 16 ans après" à Devoxx France 2012
PDF
Tp introduction java
PPT
Java uik-chap3-bases java
PDF
Java uik-chap6-poo heritage v2 java
PDF
Java uik-chap6-poo heritage v2 java
Part1
Java - Support etudiant - Tronc Commun Deuxième année ISIMA - 2018
Java PROGRAMATION CLASSE INFORMATIQUE.ppt
Les chaines de a à Z, de String à StringTemplate.pdf
Les bases du langage java
java_partie3jGZDYSDJ.VQZSVCJVJWXCDDS.pptx
java_partie3kzjhkzuefb;hbjhbefhbb,nwb.pptx
Memo java
cours java complet-2.pdf
Les bases du java
Les chaines de test test test test test caractères.pptx
Java1_BasesLangage.pdf
Java1_BasesLangage.pdf
Poly basesjavahm
Les nouveautés de Java 19, 20 et 21 - RivieraDev 2023
"Input/Ouput, 16 ans après" à Devoxx France 2012
Tp introduction java
Java uik-chap3-bases java
Java uik-chap6-poo heritage v2 java
Java uik-chap6-poo heritage v2 java

Plus de Mohamed Ferchichi (10)

PDF
JAVA Chapitre5
PDF
JAVA Chapitre3
PDF
JAVA Chapitre2
PDF
JAVA Chapitre1
PDF
Résumé sur l’utilisation du système unix
PDF
Parti 2 utilitaires pour fichiers
PDF
Parti 1 concepts de base
PDF
PDF
Cours gestion et economie 1
PDF
Traitement de signal 1
JAVA Chapitre5
JAVA Chapitre3
JAVA Chapitre2
JAVA Chapitre1
Résumé sur l’utilisation du système unix
Parti 2 utilitaires pour fichiers
Parti 1 concepts de base
Cours gestion et economie 1
Traitement de signal 1

Dernier (20)

PPTX
Le rendez-vous de l'été.pptx Film français
PPTX
Copie de Présentation Personal Branding J2025.pptx_20250610_120558_0000.pptx
PPTX
le-present-de-lindicatif-ou-le-subjonctif-present-exercice-grammatical-feuill...
PDF
Consignes générales sécurité et environnement.pdf
PPTX
risque environnema et mesure protect.pptx
PPTX
Hopital bonne sante.pptxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
PPT
Etalonnage de débitmètres.Champ d'application
PPTX
Fondamentaux du LMD.pptx pour les etudiants
PPTX
SESSION1-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
DOCX
ENDODONTIE CONSERVATRICE.docx faculté de médecine dentaire
PPTX
Séminaire protection des personnes vulnérables.pptx
PDF
Avis Digital Marketing Elite: Mon Retour d'Expérience Après 3 Mois d'Utilisation
PPT
مبادئ و هدف الحركة الكشفية عرض تقديمي.ppt
PPTX
Bienvenido slides about the first steps in spanish.pptx
PPTX
Formation Equipement de protection .pptx
PPTX
SESSION2-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
PPTX
Conception de documents et d'interfaces numériques.pptx
PPTX
le subjonctif présent, Conjugaison français
PPTX
Le rendez-vous de l'été.pptx Film français
PPTX
Présentation Personal Branding J2025.pptx_20250218_132749_0000.pptx_20250610_...
Le rendez-vous de l'été.pptx Film français
Copie de Présentation Personal Branding J2025.pptx_20250610_120558_0000.pptx
le-present-de-lindicatif-ou-le-subjonctif-present-exercice-grammatical-feuill...
Consignes générales sécurité et environnement.pdf
risque environnema et mesure protect.pptx
Hopital bonne sante.pptxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Etalonnage de débitmètres.Champ d'application
Fondamentaux du LMD.pptx pour les etudiants
SESSION1-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
ENDODONTIE CONSERVATRICE.docx faculté de médecine dentaire
Séminaire protection des personnes vulnérables.pptx
Avis Digital Marketing Elite: Mon Retour d'Expérience Après 3 Mois d'Utilisation
مبادئ و هدف الحركة الكشفية عرض تقديمي.ppt
Bienvenido slides about the first steps in spanish.pptx
Formation Equipement de protection .pptx
SESSION2-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
Conception de documents et d'interfaces numériques.pptx
le subjonctif présent, Conjugaison français
Le rendez-vous de l'été.pptx Film français
Présentation Personal Branding J2025.pptx_20250218_132749_0000.pptx_20250610_...

JAVA Chapitre7

  • 1. Chapitre 7 : Les Classes de bases de JAVA MASTER PROFESSIONNEL NOUVELLES TECHNOLOGIES DES TELECOMMUNICATIONS ET RESEAUX (N2TR) Cours JAVA © FST Les Classes de bases de JAVA Objectif : Ce chapitre vous permettra d’identifier les classes de base du langage à traves des exemples et de pouvoir les manipuler. 1 Riadh BOUHOUCHI
  • 2. Chapitre 7 : Les Classes de bases de JAVA Sommaire Les classes dans le package java.lang : .................................................................................................... 3 Comme nous l’avons déjà dit ces classes sont l’ensemble des classes de base importées automatiquement par le compilateur. ............................................................................................ 3 La classe Object : ................................................................................................................................. 3 La méthode getClass() : ................................................................................................................... 3 La méthode toString() : ................................................................................................................... 3 La classe String : ...................................................................................................................................... 4 La classe StringBuffer : ............................................................................................................................ 5 La classe System : .................................................................................................................................... 6 Les flux d'entrée/sortie standard : ...................................................................................................... 6 La classe Integer : ................................................................................................................................... 7 La classe Math ......................................................................................................................................... 8 La classe Runtime : .................................................................................................................................. 8 Les classes du package java.util :............................................................................................................. 9 La classe StringTokenizer :....................................................................................................................... 9 La classe Random : ................................................................................................................................ 10 La classe Date : ...................................................................................................................................... 10 2 Riadh BOUHOUCHI
  • 3. Chapitre 7 : Les Classes de bases de JAVA Dans cette partie on se propose de présenter quelques classes de base en JAVA fournies avec la machine virtuelle. Les classes dans le package java.lang : Comme nous l’avons déjà dit ces classes sont l’ensemble des classes de base importées automatiquement par le compilateur. La classe Object : C'est la super classe de toutes les classes Java : toutes ces méthodes sont donc héritées par toutes les classes. La méthode getClass() : La méthode getClass() renvoie un objet de la classe Class qui représente la classe de l'objet. Avec cet exemple on peut connaitre le nom d’une classe : String nomClasse = monObject.getClass().getName(); La méthode toString() : La méthode toString() de la classe Object renvoie le nom de la classe , suivi du séparateur @, lui même suivi par la valeur de hachage de l'objet. La méthode equals() : La méthode equals() implémente une comparaison par défaut. Sa définition dans Object compare les références : donc obj1.equals(obj2) ne renverra true que si obj1 et obj2 désignent le même objet. Dans une sous classe de Object, pour laquelle on a besoin de pouvoir dire que deux objets distincts peuvent être égaux. La méthode clone() : Si x désigne un objet obj1, l'exécution de x.clone() renvoie un second objet obj2, qui est une copie de obj1 : si obj1 est ensuite modifié, obj2 n'est pas affecté par ce changement. 3 Riadh BOUHOUCHI
  • 4. Chapitre 7 : Les Classes de bases de JAVA La classe String : Une chaîne de caractères est contenue dans un objet de la classe String On peut initialiser une variable String sans appeler explicitement un constructeur : le compilateur se charge de créer un objet. Voici un exemple de déclaration : String Chaine = "bonjour"; String Chaine = new String("bonjour"); Voici un exemple de comparaison entre deux chaines en utilisant la méthode equals : String chaine = "bonjour"; String chaine1 = "bonjour"; String chaine1 = "bonjour1"; if(chaine.equals(chaine1))//cette instruction permet de //comparer le contenu des deux chaines { System.out.println(“ les deux chaines de caracteres sont identiques") ; } La classe String possède de nombreuses méthodes dont voici les principales : Méthodes Rôle charAt(int) renvoie le n éme caractère de la chaine compareTo(String) compare la chaîne avec l'argument concat(String) ajoute l'argument à la chaîne et renvoie la nouvelle chaîne 4 Riadh BOUHOUCHI
  • 5. Chapitre 7 : Les Classes de bases de JAVA endsWith(String) ajoute l'argument à la chaîne et renvoie la nouvelle chaîne equalsIgnoreCase(String) compare la chaîne sans tenir compte de la casse indexOf(String) renvoie la position de début à laquelle l'argument est contenu dans la chaine lastIndexOf(String) renvoie la dernière position à laquelle l'argument est contenu dans la chaine lenght() renvoie la longueur de la chaine replace(char,char) renvoie la chaîne dont les occurrences d'un caractère sont remplacées startsWith(String int) Vérifie si la chaîne commence par la sous chaîne substring(int,int) renvoie une partie de la chaine toLowCase() renvoie la chaîne en minuscule toUpperCase() renvoie la chaîne en majuscule trim() enlève les caractères non significatifs de la chaine La classe StringBuffer : Les objets de cette classe contiennent des chaines de caractères variables, ce qui permet de les agrandir ou de les réduire. Cet objet peut être utilisé pour construire ou modifier une chaîne de caractères chaque fois que l'utilisation de la classe String nécessiterait de nombreuses instanciations d'objets temporaires. Par exemple, si str est un objet de type String, le compilateur utilisera la classe StringBuffer pour traiter la concaténation de "abcde"+str+"z" en générant le code suivant : new StringBuffer().append("abcde").append(str).append("z").toString(); Ce traitement aurait pu être réalisé avec trois appels à la méthode concat() de la classe String mais chacun des appels aurait instancié un objet StringBuffer pour réaliser la concaténation, ce qui est couteux en temps exécution. La classe StringBuffer dispose de nombreuses méthodes qui permettent de modifier le contenu de la chaîne de caractère et voici un exemple : 5 Riadh BOUHOUCHI
  • 6. Chapitre 7 : Les Classes de bases de JAVA public class MettreMaj { static final String lMaj = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; static final String lMin = "abcdefghijklmnopqrstuvwxyz"; public static void main( String[] args) { System.out.println(MetMaj("chaine avec MAJ et des min")); } public static String MetMaj(String s) { StringBuffer sb = new StringBuffer(s); return toUpperCase(sb).toString(); } } La classe System : Cette classe possède de nombreuses fonctionnalités pour utiliser des services du système d'exploitation. Les flux d'entrée/sortie standard : La classe System définit trois variables statiques qui permettent d'utiliser les flux d'entrée/sortie standards du système d'exploitation.  La variable in est de type PrintStream :  elle permet de gérer l’entrée standard du système.  Par défaut, c'est le clavier.  La variable out est de type InputStream :  C’est la sortie standard du système.  Par défaut, c'est le moniteur.  La variable err est de type PrintStream : 6 Riadh BOUHOUCHI
  • 7. Chapitre 7 : Les Classes de bases de JAVA  C’est la sortie standard des erreurs du système.  Par défaut, c'est le moniteur. Exemple en utilisant System.out : System.out.println("salut"); Voici un exemple de quelques méthodes de la classe System : méthode rôle arraycopy(Object src, int src_position, Copie un tableau à partir de la matrice source Object dst, int dst_position, int length) spécifiée, commençant à la position spécifiée, à la position spécifiée du tableau de destination. currentTimeMillis() Renvoie l'heure courante en millisecondes. exit(int status) Renvoie l'heure courante en millisecondes. gc() Exécute le garbage collector. getProperty(String key) Obtient la propriété système indiqué par la clé spécifiée. La classe Integer : La classe Integer encapsule une valeur du type int primitive dans un objet. L’objet de type Integer contient un seul champ dont le type est int. Voici quelques méthodes de la classe Integer : Méthode Rôle byteValue() Retourne la valeur de cet entier comme un octet equals(Object obj) Compare un objet par rapport à un autre hashCode() Retourne le hashcode de l’entier intValue() Retourne la valeur de l’entier avec un type int longValue() Retourne la valeur de l’entier avec un type long parseInt(String s) Convertie une chaine en un entier decimale 7 Riadh BOUHOUCHI
  • 8. Chapitre 7 : Les Classes de bases de JAVA Voici un exemple d’utilisation de la méthode parseInt(String s) : public Boolean isInteger(String a) { try{ int i=Integer.parseInt(a); } catch(Exception e){ return false; } return true; } Cette méthode retourne une valeur booléenne true si la chaine a est un entier ou false dans le cas contraire. La classe Math Cette classe contient des méthodes pour effectuer des opérations numériques de base. Nous proposons dans cet exemple quelques méthodes : Méthode Rôle abs(int a) Retourne la valeur absolu de d’un entier max(int a, int b) Retourne la valeur maximum entre deux entiers min(int a, int b) Retourne la valeur minimum entre deux entiers La classe Runtime : La classe Runtime permet d'interagir avec le système dans lequel l'application s'exécute : obtenir des informations sur le système, arrêt de la machine virtuelle, exécution d'un programme externe. 8 Riadh BOUHOUCHI
  • 9. Chapitre 7 : Les Classes de bases de JAVA Méthode Rôle totalMemory() permet d'obtenir la quantité totale de la mémoire. freeMemory() permet d'obtenir et la quantité de mémoire libre. Les classes du package java.util : Ce package contient un ensemble de classes utilitaires : la gestion des dates (Date et Calendar), la génération de nombres aléatoires (Random), la gestion des collections ordonnées ou non tels que :  la table de hachage (HashTable),  le vecteur (Vector),  la pile (Stack) ...,  la gestion des propriétés (Properties), des classes dédiées à l'internationalisation (ResourceBundle, PropertyResourceBundle, ListResourceBundle) etc ... La classe StringTokenizer : Cette classe permet de découper une chaîne de caractères (objet de type String) en fonction de séparateurs. Le constructeur de la classe accepte 2 paramètres : la chaîne à décomposer et une chaîne contenant les séparateurs. import java.util.*; class test9 { public static void main(String args[]) { StringTokenizer st = new StringTokenizer("chaine1,chaine2,chaine3,chaine4",","); while (st.hasMoreTokens()) { System.out.println((st.nextToken()).toString()); } } } Resultas : chaine1 chaine2 chaine3 chaine4 9 Riadh BOUHOUCHI
  • 10. Chapitre 7 : Les Classes de bases de JAVA Remarques :  La méthode hasMoreTokens() fournit un contrôle d'itération sur la collection en renvoyant un booleen indiquant s’il reste encore des éléments.  La méthode getNextTokens() renvoie le prochain élément sous la forme d'un objet String La classe Random : La classe Random permet de générer des nombres pseudo−aléatoires. Après l'appel au constructeur, il suffit d'appeler la méthode correspondante au type désiré. Voici quelques méthodes : Méthode rôle next(int ) Retourne un entier au hazard nextLong( ) Retourne un nombre pseudo−aléatoires de type Long nextFloat( ) Retourne un nombre pseudo−aléatoires de type Float La classe Date : La classe Date permet de manipuler les dates. Voici un exemple qui permet de récupérer l’heure et la date du système d’exploitation. import java.util.*; import java.text.SimpleDateFormat; import java.lang.String; class DateSysteme{ public static void main(String args[]) { Date localTime = null; localTime = new Date(); SimpleDateFormat sdf = new SimpleDateFormat("hh_mm_ss"); StringBuilder sb = new StringBuilder(sdf.format(localTime)); String actualHeure = String.valueOf(sb); System.out.println(actualDate); SimpleDateFormat sdf1 = new SimpleDateFormat("dd_MM_yyyy"); StringBuilder sb1 = new StringBuilder(sdf1.format(localTime)); String actualDate = String.valueOf(sb1); System.out.println(actualDate); } } 10 Riadh BOUHOUCHI