Эй, ребята, все еще пытаетесь освоить это, но как мне вызвать экземпляр объекта, если он определен, и не будет вызывать его, если экземпляр не определен. В основном, переопределение или перегрузка конструктора. Я верю, что это так.
Я проиллюстрирую, что я имею в виду. В приведенном ниже блоке я устанавливаю nil в качестве аргумента по умолчанию для артиста и жанра, но в случае, если я не определяю артиста и жанр экземпляра, я просто не хочу вызывать исполнителя и жанр.
def initialize(name,artist=nil,genre=nil)
@name = name
@artist = artist
@genre = genre
@song = Array.new
end
Это просто какой-то псевдокод, который я написал, чтобы вы знали, что я ищу. Я пытался запустить его в ruby, но ударил блок.
if(artist != nil && genre != nil)
self.new(@name,@artist,@genre)
else
self.new(@name)
end