Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

cacher des propriétés d'une classe hérité

2 réponses
Avatar
Sylo
Bonjour,

je crée un objet qui hérite d'une classe disposant d'un certain nombre de
propriété. Dans ma classe qui hérite, je voudrais rendre innaccessible ces
propriétés. Est-ce possible et comment ?
Merci
Sylo

2 réponses

Avatar
Sylo
De-même pour les évènements...
Merci
Avatar
Zoury
Salut Sylo !

En faisant cela, tu briserais les règles étiques et logiques de
l'héritage... Une classe héritant d'une autre devrait toujours exposer les
même membres que sa classe parente. Lit ce message très explicite de Patrick
à ce sujet.
http://groups.google.com/group/microsoft.public.fr.dotnet.vb/msg/b893fa9d8a421962?as_umsgid=


Encapsule plutôt une instance de ta classe de base dans ton autre classe en
exposant seulement les membres dont tu as besoin.

Exemple qui fait pas grand chose (non testé) :
'**
Public Class MaClasseDeBase

Private m_id As Int32
Private m_code As String

Public Sub New(ByVal id As Int32, ByVal code As String)
m_id = id
m_code = code
End Sub

Public Property Id() As Int32
Get
Return m_id
End Get
Set (Byval Value As Int32)
m_id = Value
End Set
End Property

Public Property Code() As String
Get
Return m_code
End Get
Set (Byval Value As String)
m_code = Value
End Set
End Property

End Class
'**
Public Class MaClasse

Private m_classeDeBase As MaClasseDeBase

Public Sub New(ByVal code As String)

m_classeDeBase = New MaClasseDeBase(1, code)

End Sub

Public Property Code() As String
Get
Return m_classeDeBase.Code
End Get
Set (Byval Value As String)
m_classeDeBase.Code = Value
End Set
End Property

End Class
'**


--
Cordialement
Yanick
MVP pour Visual Basic