UNIVERSITE MOHAMED I
       FACULTE DES SCIENCES                                Année Universitaire : 2010 / 2011
         DEPARTEMENT DE                                    Filières : SMI
         MATHEMATIQUES                                     Semestre : 5 (3ème année)
         ET INFORMATIQUE                                   Module : POO
              OUJDA


   CORRECTION DE LA SERIE 2 DU TD DU POO
Exercice 1
          Considérons les déclarations suivantes :
      byte b;short p;int n;long q ;
      final int N=10 ,M=100;
      float x ; double y;

      b=n; : Faux (on peut pas affecter un int à un byte)
      b=25;: Vrai
      n=25;: Vrai
      b=n; : Faux (on peut pas affecter un int à un byte)
      b=500;:Faux (le byte est compris entre –128 et 127)
      x=2*q;:Vrai
      y=b*b;:Vrai
      p=b*b;:Faux (le résultat d’un produit est un int)
      b=b+5;:Faux (le résultat d’une somme est un int)
      n=10; :Vrai
      p=5*n-3;:Faux (le résultat d’une expression mathématique est un int)
      p=5*N-3;:Vrai (dans ce cas le N est static donc il est pas considéré comme un int )
      b=2*M-3;:Faux (dépassement des limites du byte)




E-mail : thecomdevteam@gmail.com
WebSite : www.com-dev.net
Phone : +212618037859| +212662516524                                                           Page 1
UNIVERSITE MOHAMED I
       FACULTE DES SCIENCES                         Année Universitaire : 2010 / 2011
         DEPARTEMENT DE                             Filières : SMI
         MATHEMATIQUES                              Semestre : 5 (3ème année)
         ET INFORMATIQUE                            Module : POO
              OUJDA


Exercice 2
      class ClasseA {
      static public final int P=20;
      static private final int Q;
      private int m;
      private final int g1,g2,g3;
      public ClasseA()
      {
           Q=100; Q est une constante de classe
           g1=20;
      }
      static void f(int n) (méthode static n’accède qu’aux champs Static)
      {
           m=n;
      }
      void g(int n)
      {
           m=n;
           P=n; on ne peut pas modifier un champ Final
           g2=n; on ne peut pas modifier un champ Final
      }
      }
      public class TestInitialisation {
           public static void main(String[] args) {
                ClasseA objA= new ClasseA();
                int n=5 ,p=30;
                objA.g(n);
                objA.f(n);
                ClasseA.f(n);
                ClasseA.g(n); g() n’est pas static
                int j=ClasseA.P;
           }
      }

E-mail : thecomdevteam@gmail.com
WebSite : www.com-dev.net
Phone : +212618037859| +212662516524                                                    Page 2
UNIVERSITE MOHAMED I
       FACULTE DES SCIENCES                Année Universitaire : 2010 / 2011
         DEPARTEMENT DE                    Filières : SMI
         MATHEMATIQUES                     Semestre : 5 (3ème année)
         ET INFORMATIQUE                   Module : POO
              OUJDA


Exercice 3
      class Point {
      private int x;
      private int y;
      public Point() : Il faut enlever le void car c’est un constructeur
      {
           System.out.println("Entrée dans le constructeur Point");
      }
      }
      public class TestPoint {
       public void Point()
      {
           System.out.println("Entrée dans la méthode Point de
      TestPoint");
      }
           public static void main(String[] args) {
                Point pA =new Point();
                TestPoint pB =new TestPoint();
                pB.Point();
           }
      }




E-mail : thecomdevteam@gmail.com
WebSite : www.com-dev.net
Phone : +212618037859| +212662516524                                           Page 3
UNIVERSITE MOHAMED I
       FACULTE DES SCIENCES              Année Universitaire : 2010 / 2011
         DEPARTEMENT DE                  Filières : SMI
         MATHEMATIQUES                   Semestre : 5 (3ème année)
         ET INFORMATIQUE                 Module : POO
              OUJDA


Exercice 4
      public class Etudiant {
      private String name;
      private long CNE;
      private static int nbEtudiant;
      private final int m;
      public Etudiant(String name,long CNE)
      {
           this.name=name;
           this.CNE=CNE;
           nbEtudiant++;
           m=nbEtudiant;
      }
      public Etudiant()
      {
           nbEtudiant++;
           m=nbEtudiant;
      }
      public static int getNbEtudiant() {
           return nbEtudiant;
      }
      public int getM() {
           return m;
      }
      public void setName(String name) {
           this.name = name;
      }
      public void setCNE(long cNE) {
           CNE = cNE;
      }
      }
      public class TestEtudiant {
           public static void main(String[] args) {

E-mail : thecomdevteam@gmail.com
WebSite : www.com-dev.net
Phone : +212618037859| +212662516524                                         Page 4
UNIVERSITE MOHAMED I
       FACULTE DES SCIENCES              Année Universitaire : 2010 / 2011
         DEPARTEMENT DE                  Filières : SMI
         MATHEMATIQUES                   Semestre : 5 (3ème année)
         ET INFORMATIQUE                 Module : POO
              OUJDA



           Etudiant e1 = new Etudiant();
           e1.setName("Mohammed");
           Etudiant e2 = new Etudiant("Fatima",1356);
      System.out.println("Le nombre d'étudiants est :"
      +Etudiant.getNbEtudiant());
      System.out.println("Le numéro de l'étudiant e2 est "
      +e2.getM());
                }
      }

Exercice 5
Méthode 1:
    public class Testpoint {
           public static void main (String[] args)
               {
                Point pA = new Point(2,3);
                Point pB = new Point(2,8);
                Point.coincide(pA, pB);
               }
    }

      public class Point {
           private int x ;
           private int y ;
           public Point(int x,int y){
                 this.x=x;
                 this.y=y;
           }
           public static boolean coincide(Point a,Point b)
           {
                return (a.x==b.x)&&(a.y==b.y);
           }
E-mail : thecomdevteam@gmail.com
WebSite : www.com-dev.net
Phone : +212618037859| +212662516524                                         Page 5
UNIVERSITE MOHAMED I
       FACULTE DES SCIENCES              Année Universitaire : 2010 / 2011
         DEPARTEMENT DE                  Filières : SMI
         MATHEMATIQUES                   Semestre : 5 (3ème année)
         ET INFORMATIQUE                 Module : POO
              OUJDA


      }

Méthode 2:
    public class Testpoint {
           public static void main (String[] args)
               {
                Point pA = new Point(2,3);
                Point pB = new Point(2,8);
                pA.coincide(pB);
               }
    }

      public class Point {
           private int x ;
           private int y ;
           public Point(int x,int y){
                 this.x=x;
                 this.y=y;
           }
           public static boolean coincide(Point b)
           {
                return (this.x==b.x)&&( this.y==b.y);
           }
      }




E-mail : thecomdevteam@gmail.com
WebSite : www.com-dev.net
Phone : +212618037859| +212662516524                                         Page 6

Correction de td poo n2

  • 1.
    UNIVERSITE MOHAMED I FACULTE DES SCIENCES Année Universitaire : 2010 / 2011 DEPARTEMENT DE Filières : SMI MATHEMATIQUES Semestre : 5 (3ème année) ET INFORMATIQUE Module : POO OUJDA CORRECTION DE LA SERIE 2 DU TD DU POO Exercice 1 Considérons les déclarations suivantes : byte b;short p;int n;long q ; final int N=10 ,M=100; float x ; double y; b=n; : Faux (on peut pas affecter un int à un byte) b=25;: Vrai n=25;: Vrai b=n; : Faux (on peut pas affecter un int à un byte) b=500;:Faux (le byte est compris entre –128 et 127) x=2*q;:Vrai y=b*b;:Vrai p=b*b;:Faux (le résultat d’un produit est un int) b=b+5;:Faux (le résultat d’une somme est un int) n=10; :Vrai p=5*n-3;:Faux (le résultat d’une expression mathématique est un int) p=5*N-3;:Vrai (dans ce cas le N est static donc il est pas considéré comme un int ) b=2*M-3;:Faux (dépassement des limites du byte) E-mail : thecomdevteam@gmail.com WebSite : www.com-dev.net Phone : +212618037859| +212662516524 Page 1
  • 2.
    UNIVERSITE MOHAMED I FACULTE DES SCIENCES Année Universitaire : 2010 / 2011 DEPARTEMENT DE Filières : SMI MATHEMATIQUES Semestre : 5 (3ème année) ET INFORMATIQUE Module : POO OUJDA Exercice 2 class ClasseA { static public final int P=20; static private final int Q; private int m; private final int g1,g2,g3; public ClasseA() { Q=100; Q est une constante de classe g1=20; } static void f(int n) (méthode static n’accède qu’aux champs Static) { m=n; } void g(int n) { m=n; P=n; on ne peut pas modifier un champ Final g2=n; on ne peut pas modifier un champ Final } } public class TestInitialisation { public static void main(String[] args) { ClasseA objA= new ClasseA(); int n=5 ,p=30; objA.g(n); objA.f(n); ClasseA.f(n); ClasseA.g(n); g() n’est pas static int j=ClasseA.P; } } E-mail : thecomdevteam@gmail.com WebSite : www.com-dev.net Phone : +212618037859| +212662516524 Page 2
  • 3.
    UNIVERSITE MOHAMED I FACULTE DES SCIENCES Année Universitaire : 2010 / 2011 DEPARTEMENT DE Filières : SMI MATHEMATIQUES Semestre : 5 (3ème année) ET INFORMATIQUE Module : POO OUJDA Exercice 3 class Point { private int x; private int y; public Point() : Il faut enlever le void car c’est un constructeur { System.out.println("Entrée dans le constructeur Point"); } } public class TestPoint { public void Point() { System.out.println("Entrée dans la méthode Point de TestPoint"); } public static void main(String[] args) { Point pA =new Point(); TestPoint pB =new TestPoint(); pB.Point(); } } E-mail : thecomdevteam@gmail.com WebSite : www.com-dev.net Phone : +212618037859| +212662516524 Page 3
  • 4.
    UNIVERSITE MOHAMED I FACULTE DES SCIENCES Année Universitaire : 2010 / 2011 DEPARTEMENT DE Filières : SMI MATHEMATIQUES Semestre : 5 (3ème année) ET INFORMATIQUE Module : POO OUJDA Exercice 4 public class Etudiant { private String name; private long CNE; private static int nbEtudiant; private final int m; public Etudiant(String name,long CNE) { this.name=name; this.CNE=CNE; nbEtudiant++; m=nbEtudiant; } public Etudiant() { nbEtudiant++; m=nbEtudiant; } public static int getNbEtudiant() { return nbEtudiant; } public int getM() { return m; } public void setName(String name) { this.name = name; } public void setCNE(long cNE) { CNE = cNE; } } public class TestEtudiant { public static void main(String[] args) { E-mail : thecomdevteam@gmail.com WebSite : www.com-dev.net Phone : +212618037859| +212662516524 Page 4
  • 5.
    UNIVERSITE MOHAMED I FACULTE DES SCIENCES Année Universitaire : 2010 / 2011 DEPARTEMENT DE Filières : SMI MATHEMATIQUES Semestre : 5 (3ème année) ET INFORMATIQUE Module : POO OUJDA Etudiant e1 = new Etudiant(); e1.setName("Mohammed"); Etudiant e2 = new Etudiant("Fatima",1356); System.out.println("Le nombre d'étudiants est :" +Etudiant.getNbEtudiant()); System.out.println("Le numéro de l'étudiant e2 est " +e2.getM()); } } Exercice 5 Méthode 1: public class Testpoint { public static void main (String[] args) { Point pA = new Point(2,3); Point pB = new Point(2,8); Point.coincide(pA, pB); } } public class Point { private int x ; private int y ; public Point(int x,int y){ this.x=x; this.y=y; } public static boolean coincide(Point a,Point b) { return (a.x==b.x)&&(a.y==b.y); } E-mail : thecomdevteam@gmail.com WebSite : www.com-dev.net Phone : +212618037859| +212662516524 Page 5
  • 6.
    UNIVERSITE MOHAMED I FACULTE DES SCIENCES Année Universitaire : 2010 / 2011 DEPARTEMENT DE Filières : SMI MATHEMATIQUES Semestre : 5 (3ème année) ET INFORMATIQUE Module : POO OUJDA } Méthode 2: public class Testpoint { public static void main (String[] args) { Point pA = new Point(2,3); Point pB = new Point(2,8); pA.coincide(pB); } } public class Point { private int x ; private int y ; public Point(int x,int y){ this.x=x; this.y=y; } public static boolean coincide(Point b) { return (this.x==b.x)&&( this.y==b.y); } } E-mail : thecomdevteam@gmail.com WebSite : www.com-dev.net Phone : +212618037859| +212662516524 Page 6