Bonjour à tous,
Voilà, je fais un programme en essayant de suivre les règles de la programmation object.
J'ai une classe 1 avec des champs et des propriétés.
Puis une classe 2 avec des propriétés calculé à partir de fonctions qui ont pour paramètres des "variables" de la classe 1.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56 'CHamps Class1 Protected _TotalMass As Double 'Total mass Protected _NSM_LF As Double 'Non suspended mass Protected _NSM_RF As Double Protected _NSM_LR As Double Protected _NSM_RR As Double 'Propriété Classe 1 Public Property TotalMass As Double Get Return _TotalMass End Get Set(ByVal value As Double) _TotalMass = value End Set End Property 'NSM [kg] Public Property NSM_LF As Double Get Return _NSM_LF End Get Set(ByVal value As Double) _NSM_LF = value End Set End Property Public Property NSM_RF As Double Get Return _NSM_RF End Get Set(ByVal value As Double) _NSM_RF = value End Set End Property Public Property NSM_LR As Double Get Return _NSM_LR End Get Set(ByVal value As Double) _NSM_LR = value End Set End Property Public Property NSM_RR As Double Get Return _NSM_RR End Get Set(ByVal value As Double) _NSM_RR = value End Set End Property
Pour cela, j'avais crée une héritage entre la classe 1 et 2, ainsi les paramètres des fonctions de la classe 2 était les champs de la classe 1.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 'Fonction classe 2 Private Function CalculateSM(ByVal p_TotalMass As Double, ByVal p_NSM_LF As Double, ByVal p_NSM_RF As Double, ByVal p_NSM_LR As Double, ByVal p_NSM_RR As Double) As Double Return p_TotalMass - (p_NSM_LF + p_NSM_RF + p_NSM_LR + p_NSM_RR) End Function
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 'Function classe2 sans paramètres...? Public ReadOnly Property SM As Double Get Return CalculateSM() End Get End Property
Or quelqu'un qui me suit, me dis que c'est une mauvaise utilisation de l'héritage, et que je devrais (d'après ce que je comprend), communiquer entre les 2 classes grâce à une fonction...
Seulement là, je ne vois vraiment pas comment faire...
Partager