Bonjour,
Suivant un tutorial, je suis dans la partie "Héritage". La classe qui sert d'exemple à ce concept de la POO à l'air assez simpliste, mais l'interpréteur Ruby refuse de l'exécuter ...
J'ai une classe qui s'appelle "QuiSuisJe.rb" :
et un autre fichier qui s'appelle "Developpeur.rb" qui va justement hériter de cette classe :
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 class QuiSuisJe @@count = 0 def initialize (prenom, nom) @prenom = prenom @nom = nom @@count += 1 end def saluer "Bonjour, #{@prenom} #{@nom} !" end def to_s "Je suis #{@prenom} #{@nom} - <#{object_id}>" end def self.counter "Nombre d'instances de la classe #{self} : #{@@count} " end end
Dans la console s'affiche ceci :
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 class Developpeur < QuiSuisJe def initialize(prenom, nom, occupation) super(prenom, nom) @occupation = occupation end def tonOccupation super + "Alors comme ça tu es un #{@occupation} ?" end def to_s super + "[#{@occupation}]" end end puts Developpeur.new('Jean', 'Dupond', 'Rubyiste') puts "************************" puts Developpeur.new('Jean', 'Dupond', 'Rubyiste').tonOccupation
H:/My Documents/Tests_Ruby/Essais/src/instance/developpeur.rb:1: uninitialized constant QuiSuisJe (NameError)
Manque-t-il une indication pour indiquer à la classe "Developpeur.rb" qu'elle hérite de "QuiSuisJe.rb" ????
Si vous avez une idée .... merci.
Partager