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

Programmation orientée objet avancée

  • 1.
  • 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éritageest 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. • Lasurcharge. • 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. • Lesinterfaces 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. • Lamê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