Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Ruby Ruby Objects and Classes Variables and Methods Variables and Methods

Alicja Dul
Alicja Dul
8,589 Points

In the initialize method of the Name class, set an instance variable called @title to the title argument. Note: you will

I have tried several times..doesn´t work

:(

class.rb
class Name

name = Name.new("Mr.")
  def intialize(title)
     @title = title
  end
  def title
    @title
  end
  def first_name
    "Metal"
  end
  def last_name
    "Robot"
  end
end
name.title

2 Answers

Ari Misha
Ari Misha
19,323 Points

Hiya Alicja Dul ! If you're moving from another languages like JavaScript or Python or Java or C++ or C# or even Go, every class implementation has a constructor method ( which is called initialize in Ruby ) which controls how new instances are created on the same class itself. It like a blueprint of how your new instance will be created.

Now regarding your the challenge, i think you got it all wrong. But it has an easy fix. The challenge wants you to create a new initialize method in your class implementation. Now , since we need to give title attribute to our instances, so initialize method needs to take an argument of title and sign to an instance variable called @title (it can be named anything but for best practices it needs to be descriptive). To sum it all up , thIs is how your code should look like:

class Name
  def initialize (title)
    @title = title
  end

  def first_name
    "Metal"
  end

  def last_name
    "Robot"
  end
end
Alicja Dul
Alicja Dul
8,589 Points

Thank you so much!