A
Alucard
Hello
I am very new to Ruby and currently install Ruby 1.82.15
My question, what's wrong with the following code?
class Song
def initialize(name, artist, duration)
@name = name
@artist = artist
@duration = duration
end
def to_s
puts "Song: #{@name}--#{@artist} (#{@duration})"
end
end
class KaraokeSong < Song
def initialize(name, artist, duration, lyrics)
super(name, artist, duration)
@lyrics = lyrics
end
def to_s
super + " [#{@lyrics}]"
end
end
aSong = KaraokeSong.new("KSongName", "KSongArtist", 225, "Klyrics")
aSong.to_s
The error is:
Song: KSongName--KSongArtist (225)
song.rbw:33:in `to_s': undefined method `+' for nil:NilClass
(NoMethodError)
from song.rbw:37
Please help!
Thanks in advance
I am very new to Ruby and currently install Ruby 1.82.15
My question, what's wrong with the following code?
class Song
def initialize(name, artist, duration)
@name = name
@artist = artist
@duration = duration
end
def to_s
puts "Song: #{@name}--#{@artist} (#{@duration})"
end
end
class KaraokeSong < Song
def initialize(name, artist, duration, lyrics)
super(name, artist, duration)
@lyrics = lyrics
end
def to_s
super + " [#{@lyrics}]"
end
end
aSong = KaraokeSong.new("KSongName", "KSongArtist", 225, "Klyrics")
aSong.to_s
The error is:
Song: KSongName--KSongArtist (225)
song.rbw:33:in `to_s': undefined method `+' for nil:NilClass
(NoMethodError)
from song.rbw:37
Please help!
Thanks in advance