J'ai créé une classe qui se nomme MaClasse avec un constructeur new(para1 as
integer,para2 as integer)
Je voudrais créer une méthode qui me permette de renvoyer, à partir d'une
instance de la classe, une nouvelle instance de la classe.
Dans cette méthode, je voudrais utiliser un autre constructeur qui serait
appeler sans paramètre. Toutefois, je voudrais que ce constructeurs ne soit
accessible qu'à une instance de la classe (et non pas en shared comme un
contructeur classique).
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
RAVAILLE James
Bonjour,
Voici ce que je vous propose : - Créer un constructeur privé sans paramètre. - Créer une méthode publique d'instance exposant ce constructeur.
Exemple avec une classe Piece :
Public Class Piece
Private m_Reference As String Private m_Nom As String
Public Sub New(ByVal aReference As String, ByVal aNom As String) m_Reference = aReference m_Nom = aNom End Sub
Private Sub New() End Sub
Public Function CreerNouvelleInstance() As Piece return New Piece End Function End Class
Le constructeur privé n'est accessible que dans la classe Piece. Une méthode nommée CreerNouvelleInstance, qui est pubique expose ce constructeur. Tu peux ainsi modifier cette méthode, afin de spécifier des paramètre, ou des contrôles supplémentaires avant de créer une nouvelle instance, et agir sur cette instance.
J'espère que ceci t'aidera à résoudre ton problème.
Cordialement,
-- James RAVAILLE. MCAD .NET et MCT .NET http://www.certifdotnet.com
"Sylo" a écrit :
Bonjour,
J'ai créé une classe qui se nomme MaClasse avec un constructeur new(para1 as integer,para2 as integer)
Je voudrais créer une méthode qui me permette de renvoyer, à partir d'une instance de la classe, une nouvelle instance de la classe. Dans cette méthode, je voudrais utiliser un autre constructeur qui serait appeler sans paramètre. Toutefois, je voudrais que ce constructeurs ne soit accessible qu'à une instance de la classe (et non pas en shared comme un contructeur classique).
Est ce possible en VB et comment faire ?
Merci
Sylo
Bonjour,
Voici ce que je vous propose :
- Créer un constructeur privé sans paramètre.
- Créer une méthode publique d'instance exposant ce constructeur.
Exemple avec une classe Piece :
Public Class Piece
Private m_Reference As String
Private m_Nom As String
Public Sub New(ByVal aReference As String, ByVal aNom As String)
m_Reference = aReference
m_Nom = aNom
End Sub
Private Sub New()
End Sub
Public Function CreerNouvelleInstance() As Piece
return New Piece
End Function
End Class
Le constructeur privé n'est accessible que dans la classe Piece. Une méthode
nommée CreerNouvelleInstance, qui est pubique expose ce constructeur. Tu peux
ainsi modifier cette méthode, afin de spécifier des paramètre, ou des
contrôles supplémentaires avant de créer une nouvelle instance, et agir sur
cette instance.
J'espère que ceci t'aidera à résoudre ton problème.
Cordialement,
--
James RAVAILLE.
MCAD .NET et MCT .NET
http://www.certifdotnet.com
"Sylo" a écrit :
Bonjour,
J'ai créé une classe qui se nomme MaClasse avec un constructeur new(para1 as
integer,para2 as integer)
Je voudrais créer une méthode qui me permette de renvoyer, à partir d'une
instance de la classe, une nouvelle instance de la classe.
Dans cette méthode, je voudrais utiliser un autre constructeur qui serait
appeler sans paramètre. Toutefois, je voudrais que ce constructeurs ne soit
accessible qu'à une instance de la classe (et non pas en shared comme un
contructeur classique).
Voici ce que je vous propose : - Créer un constructeur privé sans paramètre. - Créer une méthode publique d'instance exposant ce constructeur.
Exemple avec une classe Piece :
Public Class Piece
Private m_Reference As String Private m_Nom As String
Public Sub New(ByVal aReference As String, ByVal aNom As String) m_Reference = aReference m_Nom = aNom End Sub
Private Sub New() End Sub
Public Function CreerNouvelleInstance() As Piece return New Piece End Function End Class
Le constructeur privé n'est accessible que dans la classe Piece. Une méthode nommée CreerNouvelleInstance, qui est pubique expose ce constructeur. Tu peux ainsi modifier cette méthode, afin de spécifier des paramètre, ou des contrôles supplémentaires avant de créer une nouvelle instance, et agir sur cette instance.
J'espère que ceci t'aidera à résoudre ton problème.
Cordialement,
-- James RAVAILLE. MCAD .NET et MCT .NET http://www.certifdotnet.com
"Sylo" a écrit :
Bonjour,
J'ai créé une classe qui se nomme MaClasse avec un constructeur new(para1 as integer,para2 as integer)
Je voudrais créer une méthode qui me permette de renvoyer, à partir d'une instance de la classe, une nouvelle instance de la classe. Dans cette méthode, je voudrais utiliser un autre constructeur qui serait appeler sans paramètre. Toutefois, je voudrais que ce constructeurs ne soit accessible qu'à une instance de la classe (et non pas en shared comme un contructeur classique).