Bonjour,
J'ai un problème simple, qui est général en POO (C#, VB.Net, C++, etc.). J'ai une classe ID (identifiant unique de chaque objet) avec un membre id qui sert juste à "nourrir" les classes héritantes (Personne, voiture, Chambre, etc.). Donc elle est inutile dans mes vues/formulaires. Aussi je voudrais la rendre invisible (pour que mon code soit plus propre). Voici le code en VB.Net (rien de plus classique) :
Public Class ClasseID
private _id As Integer
Public Property id() As Integer
Get
Return _id
End Get
Set(ByVal value As Integer)
_id = value
End Set
End Property
(pas de constructeur)
End Class
Public Class Bidule
inherits ClasseId
(...)
end class
J'ai réussi en partie à résoudre mon problème comme ceci :
Public Class ClasseID
Friend _id As Integer
End Class
Ainsi dans mes formulaires ou un test de console, un objID.id n'est plus possible, mais on peut toujours faire :
dim objID as classeID
J'aimerais que classeID disparaisse des déclarations. Alors, j'ai fait un :
Friend Class ClasseID
Friend _id As Integer
End Class
Mais, mes classes héritantes grognent ! (erreurs)
J'espère que je me suis fait comprendre. En une phrase, je veux que ma ClasseID serve juste pour les classes héritantes, mais en dehors (formulaire, console), qu'elle n'apparaisse plus dans les déclarations (car inutile)
Désolé pour ce message long, mais je pense que la(les) réponse(s) (si vous souhaitez répondre) sera(seront) plus courte(s)
Partager