SlideShare une entreprise Scribd logo
1  sur  14
La Programmation Orientée
Objet Avancée
Dans ce cours, nous allons voir :
Leçon 1 : La programmation orientée objet avancée.
Atelier.
Leçon 1 : La programmation orientée objet avancée.
Leçon 1 : La programmation orientée objet avancée.
1. Héritage.
2. Interfaces.
3. Polymorphisme.
1. Héritage.
• L’héritage est le concept en vertu duquel des attributs et opérations communes
d’une classe de base sont réutilisés dans une classe dérivée.
• L’héritage spécifie une relation < est un type de >.
• Plusieurs classes partagent les mêmes attributs et opérations, ce qui permet
une réutilisation efficace de code.
• Si la classe de base ne contient pas de code d’implémentation et n’est jamais
instanciée en tant qu’objet, on dit qu’il s’agit d’une classe abstraite.
• On dit hériter d’une classe, et implémenter une interface.
Leçon 1 : La programmation orientée objet avancée.
1. Héritage.
• La surcharge.
• La substitution.
Leçon 1 : La programmation orientée objet avancée.
1. Héritage.
Leçon 1 : La programmation orientée objet avancée.
Classe de base
Classe dérivée Classe dérivée
Classe de base
et dérivée
Classe dérivée
Héritage
Héritage
Héritage
Héritage
class Chat class Tigre : Chat
class TigreBlanc : Tigreclass Jaguar : Chatclass Lion : Chat
1. Héritage.
Leçon 1 : La programmation orientée objet avancée.
[C#]
class ClasseBase
{
//Placer des définitions de classe ici.
}
[Vb.Net]
Class ClasseBase
‘Placer des définitions de classe ici.
End Class
Définition
[C#]
class ClasseDerivee : ClasseBase
{
//Placer des définitions de classe ici.
}
[Vb.Net]
Class ClasseDerivee : Inherits ClasseBase
‘Placer des définitions de classe ici.
End Class
Héritage
2. Interfaces.
• Les interfaces définissent uniquement les signatures de méthode et de
propriété.
• Les classes définissent l’implémentation du code pour les méthodes
d’interface.
• L’héritage d’interface signifie que seule l’interface est héritée, et non le code
d’implémentation.
• On dit implémenter une interface, et hériter d’une classe.
Leçon 1 : La programmation orientée objet avancée.
2. Interfaces.
Leçon 1 : La programmation orientée objet avancée.
Classe de base
Classe dérivée
Interface
Classe dérivée
Héritage Héritage
Implémentation
class Transport
interface IAerien
class Avion : Transport, Itransport, IAerien
class Velo : Transport, ITransport
interface ITransport
Implémentation Implémentation
Interface
2. Interfaces.
Leçon 1 : La programmation orientée objet avancée.
[C#]
interface VotreInterface
{
//Placer des définitions d’interface ici.
}
[Vb.Net]
Interface VotreInterface
‘Placer des définitions d’interface ici.
End Interface
Définition
[C#]
class VotreClasse : VotreInterface
{
//Placer des définitions de classe ici.
}
[Vb.Net]
Class VotreClasse
Implements VotreInterface
‘Placer des définitions de classe ici.
End Class
Implémentation
3. Polymorphisme.
• La même opération se comporte différemment quand elle est appliquée à des
objets basés sur des classes différentes.
• Souvent fondé sur l’héritage d’interface :
• Les classes héritent de la classe de base d’interface.
• Chaque classe dérivée implémente sa propre version du code.
• Les clients peuvent traiter tous les objets comme des instances de la
classe de base, sans connaître les classes dérivées.
Leçon 1 : La programmation orientée objet avancée.
3. Polymorphisme.
Leçon 1 : La programmation orientée objet avancée.
[C#]
interface VotreInterface
{
String getName();
}
[Vb.Net]
Interface VotreInterface
Function getName() As String
End Interface
Définition
3. Polymorphisme.
Leçon 1 : La programmation orientée objet avancée.
[C#]
class VotreClasse : VotreInterface
{
//Placer des définitions de classe ici.
}
[Vb.Net]
Class VotreClasse
Implements VotreInterface
‘Placer des définitions de classe ici.
End Class
Implémentation

Contenu connexe

Tendances

Cours python avancé
Cours python avancéCours python avancé
Cours python avancé
pierrepo
 

Tendances (20)

La gestion des exceptions avec Java
La gestion des exceptions avec JavaLa gestion des exceptions avec Java
La gestion des exceptions avec Java
 
Introduction à ASP.NET
Introduction à ASP.NETIntroduction à ASP.NET
Introduction à ASP.NET
 
Support POO Java Deuxième Partie
Support POO Java Deuxième PartieSupport POO Java Deuxième Partie
Support POO Java Deuxième Partie
 
QCM Sécurité Informatique
QCM Sécurité InformatiqueQCM Sécurité Informatique
QCM Sécurité Informatique
 
eServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API ManagementeServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API Management
 
Cours d'introduction aux HTML5 & CSS3
Cours d'introduction aux HTML5 & CSS3Cours d'introduction aux HTML5 & CSS3
Cours d'introduction aux HTML5 & CSS3
 
Exercice 1 java Héritage
Exercice 1 java HéritageExercice 1 java Héritage
Exercice 1 java Héritage
 
Chapitre 4 heritage et polymorphisme
Chapitre 4 heritage et polymorphismeChapitre 4 heritage et polymorphisme
Chapitre 4 heritage et polymorphisme
 
Programmation orientée objet : Object, classe et encapsulation
Programmation orientée objet : Object, classe et encapsulationProgrammation orientée objet : Object, classe et encapsulation
Programmation orientée objet : Object, classe et encapsulation
 
Support programmation orientée objet c# .net version f8
Support programmation orientée objet c#  .net version f8Support programmation orientée objet c#  .net version f8
Support programmation orientée objet c# .net version f8
 
PL/SQL:les curseurs
PL/SQL:les curseursPL/SQL:les curseurs
PL/SQL:les curseurs
 
Support Java Avancé Troisième Partie
Support Java Avancé Troisième PartieSupport Java Avancé Troisième Partie
Support Java Avancé Troisième Partie
 
Cours python avancé
Cours python avancéCours python avancé
Cours python avancé
 
Architectures distribuées
Architectures distribuéesArchitectures distribuées
Architectures distribuées
 
Cours JavaScript
Cours JavaScriptCours JavaScript
Cours JavaScript
 
Cours partie1 elgarrai zineb
Cours partie1 elgarrai zinebCours partie1 elgarrai zineb
Cours partie1 elgarrai zineb
 
Support Web Services SOAP et RESTful Mr YOUSSFI
Support Web Services SOAP et RESTful Mr YOUSSFISupport Web Services SOAP et RESTful Mr YOUSSFI
Support Web Services SOAP et RESTful Mr YOUSSFI
 
Appalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSPAppalications JEE avec Servlet/JSP
Appalications JEE avec Servlet/JSP
 
Support de cours technologie et application m.youssfi
Support de cours technologie et application m.youssfiSupport de cours technologie et application m.youssfi
Support de cours technologie et application m.youssfi
 
Chapitre 5 classes abstraites et interfaces
Chapitre 5  classes abstraites et interfacesChapitre 5  classes abstraites et interfaces
Chapitre 5 classes abstraites et interfaces
 

En vedette

En vedette (15)

POO
POOPOO
POO
 
Polymorphisme
PolymorphismePolymorphisme
Polymorphisme
 
Introduction au microsoft .net framework 4.0
Introduction au microsoft .net framework 4.0Introduction au microsoft .net framework 4.0
Introduction au microsoft .net framework 4.0
 
C# - Mappages de types de données SQL Server
C# - Mappages de types de données SQL ServerC# - Mappages de types de données SQL Server
C# - Mappages de types de données SQL Server
 
SQL Server preparation, installation et configuration
SQL Server   preparation, installation et configurationSQL Server   preparation, installation et configuration
SQL Server preparation, installation et configuration
 
c# programmation orientée objet (Classe & Objet)
c# programmation orientée objet (Classe & Objet)c# programmation orientée objet (Classe & Objet)
c# programmation orientée objet (Classe & Objet)
 
C# langage & syntaxe
C#   langage & syntaxeC#   langage & syntaxe
C# langage & syntaxe
 
Masquer le bouton enregistrer dans un formulaire InfoPath
Masquer le bouton enregistrer dans un formulaire InfoPathMasquer le bouton enregistrer dans un formulaire InfoPath
Masquer le bouton enregistrer dans un formulaire InfoPath
 
Présentation de SharePoint 2013
Présentation de SharePoint 2013Présentation de SharePoint 2013
Présentation de SharePoint 2013
 
Du Polymorphisme dynamique au polymorphisme statique : Abstraction sans perte...
Du Polymorphisme dynamique au polymorphisme statique : Abstraction sans perte...Du Polymorphisme dynamique au polymorphisme statique : Abstraction sans perte...
Du Polymorphisme dynamique au polymorphisme statique : Abstraction sans perte...
 
Théorie de normalisation-base de données
Théorie de normalisation-base de donnéesThéorie de normalisation-base de données
Théorie de normalisation-base de données
 
Partie 8: Objets et Classes — Programmation orientée objet en C++
Partie 8: Objets et Classes — Programmation orientée objet en C++Partie 8: Objets et Classes — Programmation orientée objet en C++
Partie 8: Objets et Classes — Programmation orientée objet en C++
 
Polymorphisme : un concept polymorphe !
Polymorphisme : un concept polymorphe !Polymorphisme : un concept polymorphe !
Polymorphisme : un concept polymorphe !
 
L'informatique nomade et polymorphe
L'informatique nomade et polymorpheL'informatique nomade et polymorphe
L'informatique nomade et polymorphe
 
Fondamentaux java
Fondamentaux javaFondamentaux java
Fondamentaux java
 

Similaire à Programmation orientée objet avancée

Langage Java et Programmation Orienté Objet
Langage Java et Programmation Orienté ObjetLangage Java et Programmation Orienté Objet
Langage Java et Programmation Orienté Objet
Mohammed Jaafar
 
Interface collectionsinter
Interface collectionsinterInterface collectionsinter
Interface collectionsinter
RYMAA
 
JavaLesBasespourles debutantset pour vous.pdf
JavaLesBasespourles debutantset pour vous.pdfJavaLesBasespourles debutantset pour vous.pdf
JavaLesBasespourles debutantset pour vous.pdf
hindguendouz2000
 
Cours java smi_2011_2012_partie_i_29_octobre_2011
Cours java smi_2011_2012_partie_i_29_octobre_2011Cours java smi_2011_2012_partie_i_29_octobre_2011
Cours java smi_2011_2012_partie_i_29_octobre_2011
yassine kchiri
 

Similaire à Programmation orientée objet avancée (20)

XB-Java.ppt
XB-Java.pptXB-Java.ppt
XB-Java.ppt
 
POO-Cours.pdf
POO-Cours.pdfPOO-Cours.pdf
POO-Cours.pdf
 
4711538.pptx
4711538.pptx4711538.pptx
4711538.pptx
 
Programmation Java
Programmation JavaProgrammation Java
Programmation Java
 
Langage Java et Programmation Orienté Objet
Langage Java et Programmation Orienté ObjetLangage Java et Programmation Orienté Objet
Langage Java et Programmation Orienté Objet
 
POO Licence L2 Partie I.pdf
POO Licence L2 Partie I.pdfPOO Licence L2 Partie I.pdf
POO Licence L2 Partie I.pdf
 
Interface collectionsinter
Interface collectionsinterInterface collectionsinter
Interface collectionsinter
 
Formation PHP avancé - Cake PHP
Formation PHP avancé - Cake PHPFormation PHP avancé - Cake PHP
Formation PHP avancé - Cake PHP
 
Langage C#
Langage C#Langage C#
Langage C#
 
Cours_Java.pdf
Cours_Java.pdfCours_Java.pdf
Cours_Java.pdf
 
11-Cours de Géniel Logiciel
11-Cours de Géniel Logiciel11-Cours de Géniel Logiciel
11-Cours de Géniel Logiciel
 
Les Classe en Java
Les Classe en JavaLes Classe en Java
Les Classe en Java
 
2015: L'année d'Elixir, Code, écosystème et communauté
2015: L'année d'Elixir, Code, écosystème et communauté2015: L'année d'Elixir, Code, écosystème et communauté
2015: L'année d'Elixir, Code, écosystème et communauté
 
JavaLesBasespourles debutantset pour vous.pdf
JavaLesBasespourles debutantset pour vous.pdfJavaLesBasespourles debutantset pour vous.pdf
JavaLesBasespourles debutantset pour vous.pdf
 
Java cours n° 2 - classe-objet-constructeur
Java   cours n° 2 - classe-objet-constructeurJava   cours n° 2 - classe-objet-constructeur
Java cours n° 2 - classe-objet-constructeur
 
Cours java smi_2011_2012_partie_i_29_octobre_2011
Cours java smi_2011_2012_partie_i_29_octobre_2011Cours java smi_2011_2012_partie_i_29_octobre_2011
Cours java smi_2011_2012_partie_i_29_octobre_2011
 
C#
C#C#
C#
 
Dotnet csharp
Dotnet csharpDotnet csharp
Dotnet csharp
 
Tutoriel java
Tutoriel javaTutoriel java
Tutoriel java
 
tp-spring.pdf
tp-spring.pdftp-spring.pdf
tp-spring.pdf
 

Programmation orientée objet avancée

  • 2. Dans ce cours, nous allons voir : Leçon 1 : La programmation orientée objet avancée. Atelier.
  • 3. Leçon 1 : La programmation orientée objet avancée.
  • 4. Leçon 1 : La programmation orientée objet avancée. 1. Héritage. 2. Interfaces. 3. Polymorphisme.
  • 5. 1. Héritage. • L’héritage est le concept en vertu duquel des attributs et opérations communes d’une classe de base sont réutilisés dans une classe dérivée. • L’héritage spécifie une relation < est un type de >. • Plusieurs classes partagent les mêmes attributs et opérations, ce qui permet une réutilisation efficace de code. • Si la classe de base ne contient pas de code d’implémentation et n’est jamais instanciée en tant qu’objet, on dit qu’il s’agit d’une classe abstraite. • On dit hériter d’une classe, et implémenter une interface. Leçon 1 : La programmation orientée objet avancée.
  • 6. 1. Héritage. • La surcharge. • La substitution. Leçon 1 : La programmation orientée objet avancée.
  • 7. 1. Héritage. Leçon 1 : La programmation orientée objet avancée. Classe de base Classe dérivée Classe dérivée Classe de base et dérivée Classe dérivée Héritage Héritage Héritage Héritage class Chat class Tigre : Chat class TigreBlanc : Tigreclass Jaguar : Chatclass Lion : Chat
  • 8. 1. Héritage. Leçon 1 : La programmation orientée objet avancée. [C#] class ClasseBase { //Placer des définitions de classe ici. } [Vb.Net] Class ClasseBase ‘Placer des définitions de classe ici. End Class Définition [C#] class ClasseDerivee : ClasseBase { //Placer des définitions de classe ici. } [Vb.Net] Class ClasseDerivee : Inherits ClasseBase ‘Placer des définitions de classe ici. End Class Héritage
  • 9. 2. Interfaces. • Les interfaces définissent uniquement les signatures de méthode et de propriété. • Les classes définissent l’implémentation du code pour les méthodes d’interface. • L’héritage d’interface signifie que seule l’interface est héritée, et non le code d’implémentation. • On dit implémenter une interface, et hériter d’une classe. Leçon 1 : La programmation orientée objet avancée.
  • 10. 2. Interfaces. Leçon 1 : La programmation orientée objet avancée. Classe de base Classe dérivée Interface Classe dérivée Héritage Héritage Implémentation class Transport interface IAerien class Avion : Transport, Itransport, IAerien class Velo : Transport, ITransport interface ITransport Implémentation Implémentation Interface
  • 11. 2. Interfaces. Leçon 1 : La programmation orientée objet avancée. [C#] interface VotreInterface { //Placer des définitions d’interface ici. } [Vb.Net] Interface VotreInterface ‘Placer des définitions d’interface ici. End Interface Définition [C#] class VotreClasse : VotreInterface { //Placer des définitions de classe ici. } [Vb.Net] Class VotreClasse Implements VotreInterface ‘Placer des définitions de classe ici. End Class Implémentation
  • 12. 3. Polymorphisme. • La même opération se comporte différemment quand elle est appliquée à des objets basés sur des classes différentes. • Souvent fondé sur l’héritage d’interface : • Les classes héritent de la classe de base d’interface. • Chaque classe dérivée implémente sa propre version du code. • Les clients peuvent traiter tous les objets comme des instances de la classe de base, sans connaître les classes dérivées. Leçon 1 : La programmation orientée objet avancée.
  • 13. 3. Polymorphisme. Leçon 1 : La programmation orientée objet avancée. [C#] interface VotreInterface { String getName(); } [Vb.Net] Interface VotreInterface Function getName() As String End Interface Définition
  • 14. 3. Polymorphisme. Leçon 1 : La programmation orientée objet avancée. [C#] class VotreClasse : VotreInterface { //Placer des définitions de classe ici. } [Vb.Net] Class VotreClasse Implements VotreInterface ‘Placer des définitions de classe ici. End Class Implémentation