Partager via


Modifications de l'interface pour les utilisateurs de Visual Basic 6.0

Mise à jour : novembre 2007

Une interface, telle que configurée dans Visual Basic, est un type qui définit une liste de membres publics. Un type Interface ne peut être ni instancié, ni implémenté.

Interface et classes

L'interface d'une classe représente sa liste de membres publics. L'instruction Interface dans Visual Basic 2008 vous permet de déclarer un type définissant une liste de membres publics. Lorsqu'une classe comporte l'instruction Implements, elle ajoute les membres de l'interface en les implémentant un à un, par opposition à l'héritage d'implémentation à l'aide du mot clé Inherits. Pour l'héritage de l'implémentation, les membres sont hérités de la classe de base et n'ont pas à être implémentés dans la classe dérivée.

Dans .NET Framework, les interfaces sont souvent utilisées par les classes pour fournir l'assistance nécessaire à certains services de l'application. À titre d'exemple, .NET Framework prévoit qu'en cas d'implémentation de l'interface System.IComparable par une classe, le runtime triera les instances de la classe si elles sont contenues dans une ArrayList.

Pour plus d'informations sur l'utilisation d'interfaces dans Visual Basic 2008, see Interfaces en Visual Basic.

Visual Basic 6.0

Dans Visual Basic 6.0, toute classe peut agir comme une interface. Toute classe peut implémenter l'interface d'une autre classe à l'aide de l'instruction Implements, instruction, comme indiqué ci-dessous.

' Contents of class BaseClass
Public Sub BaseMethod()
End Sub

' Contents of class DerivedClass
Implements BaseClass
Private Sub BaseClass_BaseMethod()
End Sub

Si la présence de code dans les membres individuels de la classe n'est pas requise, elle est possible.

Visual Basic 2008

Visual Basic 2008 fait une nette différence entre les classes et les interfaces. La classe est déclarée dans une instruction Class ; l'interface est déclarée dans une instruction Interface. Une classe ne peut pas agir comme une interface. Pour agir comme une interface, le type doit être déclaré à l'aide de Interface. Les membres d'une interface ne sont pas implémentés. En fait, la syntaxe n'autorise pas des lignes de code telles que End Sub dans une définition d'interface. Les membres d'une interface sont implémentés dans la classe qui déclare une interface à l'aide de l'instruction Implements :

Interface Printable
    Sub Print()
    Property Mode() As Integer
End Interface

Public Class Tree
    Implements Printable

    Private modeValue As Integer
    Public Property Mode() As Integer Implements Printable.Mode
        Get
            Return modeValue
        End Get
        Set(ByVal Value As Integer)
            modeValue = Value
        End Set
    End Property

    Public Sub Print() Implements Printable.Print
        ' Add code to print a tree.
    End Sub
End Class

Suggestions de mise à niveau

La seule solution pour implémenter l'héritage dans Visual Basic 6.0 consiste à utiliser l'instruction Implements et une classe de base. Dans les versions plus récentes de Visual Basic, il existe deux types d'héritages : l'héritage d'implémentation et l'héritage d'interface. Le type que vous devez sélectionner dépend de votre application. Les points à prendre en compte sont les suivants :

  • À l'aide de l'instruction Inherits, instruction, l'héritage d'implémentation vous permet de créer de nouvelles classes sans écrire davantage de code. Vous n'ajoutez du code que lorsque vous souhaitez modifier le comportement de la classe de base. Pour l'héritage de l'interface, vous devez ajouter du code pour chaque membre de la classe de base.

  • Les interfaces peuvent être utilisées lorsque vous souhaitez hériter de plusieurs classes. Visual Basic 2008 prend en charge l'héritage d'une seule classe, mais une classe peut implémenter plusieurs interfaces.

  • Le .NET Framework définit plusieurs interfaces qui simplifient des tâches de programmation courantes. IComparable, ISerializable et IFormattable en sont des exemples.

  • Pour de nombreuses interfaces .NET Framework, .NET Framework fournit également une classe implémentant l'interface. La classe Component qui implémente l'interface IComponent en est un exemple. En héritant de Component à l'aide de l'instruction Inherits, instruction, une classe bénéficie de toutes les fonctionnalités de l'interface IComponent sans qu'il soit nécessaire d'écrire du code.

Voir aussi

Référence

Interface, instruction (Visual Basic)

Class, instruction (Visual Basic)

Inherits, instruction