class SomeClass
def some_method
end
end
class Person
@name = "Bob"
def greet
"Welcome " + @name + "!"
end
def change_to_fred
@name = "Fred"
end
end
person = Person.new
puts person.greet # => "Welcome Bob!"
person.change_to_fred
puts person.greet # => "Welcome Fred!"
class Person
def initialize(name)
@name = name
end
end
person = Person.new("Joe")
class Person
def name
@name
end
def name=(name)
@name = name
end
end
The previous example could have been written like this:
class Person
attr_accessor :name
end
class Person
attr_accessor :name
end
class Employee < Person
attr_accessor :position
end
class Person
def name
@name
end
protected
def name=(name)
@name = name
end
private
def change_to_bob
@name = "Bob"
end
end