Poo ch2

Télécharger au format pptx, pdf ou txt
Télécharger au format pptx, pdf ou txt
Vous êtes sur la page 1sur 20

Dev-Informatique

Réalisé par : HACHIMI SAFAE


Module N° 13 : Programmation Orientée Objet
Chapitre 2 : Programmation Orientée Objet
I-INTRODUCTION:

 Un langage procédural est composé de procédure , ce qui va permettre au programme de traiter

une suite d’instruction .

 La programmation orientée objet est la programmation par objet , l’intéraction entre les objets via

leurs relations permet de réaliser les fonctionnalités attendues par un programme informatique .
II-LES TERMES :

1-OBJET :

A-DEFINITION :

 Un objet représente un concept une idée ou toute entité du monde physique .

Exemple : Chaise , Table ,Maison, Voiture ,…

B-LES CARACTERISTIQUES D’UN OBJET :

 Un objet possède les caractéristiques suivants :


 PROPRIÉTÉS : Un objet possède des propriétés .
EXEMPLE : L’objet Maison possède une couleur , une adresse , le nombre de pièces .
 DES ACTIONS : Un objet peut faire des actions .
EXEMPLE : L’objet voiture peut rouler .
 INTERACTIONS : Un objet peut intéragir l’objet personne peut louer un objet maison .
2-CLASSE :

A-DEFINITION :

 Une classe est un type abstrait qui encapsule les données et traitements .

 Autrement dit , c’est la structure qui définit les propriétés et les actions .

B-CREATION D’UNE CLASSE :

Class Nom Classe{

//Définitions des propriétés

//Définitions des actions

EXEMPLE :

Class Maison{

}
3-LES CHAMPS :

 Les propriétés d’un objet de la classe

 SYNTAXE : Visibilité <Type> Nom_Champs ;

EXEMPLE :

Class Maison{

public string couleur ;

public string adresse;

public int nombreDesPièces ;

}
4-LES METHODES :

 Ce sont les actions de l’objet .

SYNTAXE : Visibilité<TypedeRetour><NomMéthode>(<Type Paramètre>Nom_Paramètre){ }

EXEMPLE :

Class Maison{

public string couleur ;

public string adresse;

public int nombreDesPièces ;

public string Affiche(){

string ch=‘’adresse ‘’+adresse +’’Nombre de Pièces : ‘’+ nombreDesPièces ;

return ch ;}

}
5-INSTANCE D’UNE CLASSE :

 C’est un objet particulier de la classe , qui peut activer les méthodes de la classe et qui a des valeurs
particuliers de ses propriétés .

A-INSTANCIATION D’UN OBJET :

 Pour instancier un objet , on utilise le mot clé New de la façon suivante :

<NomClasse><NomObjet> = new <NomClasse>();

EXEMPLE :

Maison m = new Maison () ;

REMARQUE :

Au moment de l’instanciation d’un objet , l’opération new crée l’objet et le met à une place

possible en mémoire , cette adresse mémoire est conservée dans la variable m ,

On dit que m contient une référence vers un objet Maison .


EXEMPLE :

Maison m = new Maison();

m.couleur = ‘’noir ‘’;

m.adresse = ‘’RABAT’’;

m. nombreDesPièces = 4 ;

Console.WriteLine(m.Affiche());
6-LES CONSTRUCTEURS :

 Un constructeur est une méthode qui va se change de créer un objet et d’initialiser ses attributs .

 Elle est appelée automatiquement à chaque fois que l’on crée un objet basé sur cette classe .

 Le constructeur est la méthode qui a le même nom de la classe et qui ne retourne rien .

 Par contre , elle peut prendre des arguments .

A-LES TYPES :

A-1°)-CONSTRUCTEUR PAR DEFAUT :

 C’est le constructeur qui ne prend pas des paramètres et dont toutes les propriétés ont une valeur par

défaut .

EXEMPLE :

public Stagiaire(){

Nom = ‘’HACHIMI’’ ;

Prénom = ‘’SAFAE’’ ;

Age = 30 ;

}
A-2°)-CONSTRUCTEUR D’INITIALISATION :

 On définit un autre construction , mais dans ce cas , le constructeur prend un ou plusieurs

paramètres afin d’initialiser les attributs de l’objet de la classe avec des valeurs passées en

paramètres .

EXEMPLE :

public Stagiaire (String N , String P , int A){

Nom=N ;

Prénom=P ;

Age=A ;

}
A-3°)-CONSTRUCTEUR DE COPIE :

 C’est un constructeur qui prend au paramètre un objet et permet de créer un objet à partir

d’un autre .

EXEMPLE :

public Stagiaire(Stagiaire S){

Nom = S.Nom;

Prénom = S.Prénom ;

Age = S.Age ;}

B-UTILISATION :

B-1°)-CONSTRUCTEUR PAR DEFAUT : Stagiaire S1 = new Stagiaire ();

B-2°)-CONSTRUCTEUR D’INITIALISATION :  Stagiaire S2 = new Stagiaire


(‘’SADIKI’’,’’SADIK’’,20);

B-3°)-CONSTRUCTEUR DE COPIE :  Stagiaire S3 = new Stagiaire (S2);


7-ENCAPSULATION :

 Permet à un objet de renfermer ses propres attributs et ses méthodes .

 Les détails de l’implémentation d’un objet sont masqués aux autres objets .

A-LES TYPES D’ENCAPSULATION :

A-1°)-Public :

Les attributs de type public sont accessibles à tous les autres classes .

A-2°)-Protected :

Les attributs de type protected sont accessibles par la classe et les classes dérivées .

A-3°)-Internal :

Les attributs sont accessibles par la classe et les modules dérivées .


A-4°)-Private :

 Les attributs de type private sont accessibles seulement par la classe elle-même .

B-ACCESSEURS ET MUTATEURS (MODIFICATEURS ):

Gestters et Setters :

B-1°)-ACCESSEUR :

 Une méthode qui prendra aucun paramètre et aura comme type de retour le type du champs à récupérer .

EXEMPLE :

public String getnom(){return _nom ;}

B-2°)-MUTATEUR :

 Une méthode sans type de retour prend en paramètre la nouvelle valeur à affecter .

EXEMPLE :

public void Setnom(String N){ n_nom =N;}


NOTE :

 On pourra définir les getters et les setters par la méthode suivante :

public String Nom{

get{ return _nom ; }

set{ _nom=value ; }

 Ou simplement par :

public String Nom{ get ; set ; } (Sans déclarer le champs _nom)


8-STATIC :

 Si vous utilisez static , vous n’avez pas besoin d’instancier la classe .

 On utilise Classe.Méthode ou Classe.Attribut dans la méthode Main ;

 Les variables d’instances sont des variables propres à un objet

 IL est possible de définir une variable de classe qui est partagée par tous les objets de la classe

avec le clé Static .

 Une variable Static permet de créer une constante modifiable par tous les objets de classe .

 Pour créer une classe ou une méthode static , vous devez déclarer tous les attributs static .
III-CLASSE DATE TIME :

1-CONSTRUCTEUR :

DateTime <NOM Date> = new DateTime(annee,mois ,jour,heure,minute,second,millisecond);

EXEMPLE :

DateTime DT1 =new DateTime(2018,01,27);

DateTime DT2 = new DateTime(2018,01,30,8,44,10,25);

2-PROPRIETE :
• Day : Retourne le jour : DT1.Day
• DayOfWeek : Retourne le jour de la semaine DT1.DayOfWeek
• Year : Retourne l’année  DT1.Year
• Month : Retourne le mois DT1.Month
• DayOfYear : Retourne le jour de l’année DT1.DatOfYear
• Minute : Retourne la minute de cette date DT1.Minute
• Seconds : Retourne les secondes de cette date

• Now : Retourne une valeur DateTime qui représente la date actuelle de l’ordinateur .

3-METHODE :

• AddDays(nombre jour ): Retourne un nouveau jour DateTime qui ajoute le nombre des jours

spécifiés à la valeur de l’instance .

EXEMPLE : DateTime date = DT1.AddDays(20);  16/02/2018

• AddYears(nombre annee) : Retourne un nouveau DateTime qui ajoute le nombre des années

spécifiés à la valeur de l’instance .

• AddSeconds: ( double ) Retourne un nouveau DateTime qui ajoute le nombre des secondes

spécifiés à la valeur de l’instance .

• Add(TimeSpan) : Retourne un nouveau DateTime qui ajoute la valeur de TimeSpon spécifié à

la valeur de l’instance .
• AddHours :(int) Retourne des heures

• AddMinutes : (int) Retourne des minutes .

• Equals : (int) Retourne true si la date spécifié égale la date de l’instance .

EXEMPLE :

if(DT1.Equals(DT2)){

return true ;}

else{return false ;}

• ToString() : Retourne la date sous forme chaine de caractère .

• ToString(Format) : Retourne la date sous forme de format spécifique .

EXEMPLE :

DT1.ToString(‘’DT1’’);  27/01/2018
VI-CLASSE TIMESPAN :

1-CONSTRUCTEUR :

TimeSpan <NOM Date> = new TimeSpan(jour,heure,minute,second,millisecond);

EXEMPLE :

TimeSpan TS1 = new TimeSpan(27,20,15);

TimeSpan TS2 = new TimeSpan(27,20,15,30,11);

2-LES PROPRIETES :

• Days : Retourne le nombre de jour TS1.Days ;  27

• TotalDays : Retourne l’intervalle du temps en jours .

• Hours : Retourne les heures ;  TS1.Hours  20

• TotalsHours : Retourne l’intervalle du temps en heures .

REMARQUE :

On dit la même chose pour les propriétés Minutes , TotalsMinutes ,Seconds et TotalSeconds .
Dev-Informatique
MERCI POUR VOTRE ATTENTION

Vous aimerez peut-être aussi