Ruby/Class/Writable Attributes

Материал из Wiki.crossplatform.ru

Версия от 17:10, 26 мая 2010; (Обсуждение)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Creating Writable Attributes: using an accessor method followed with an equals sign (=)

class Animal
  attr_reader :color
  def color=(color)
    @color = color
  end
  def initialize(color)
    @color = color
  end
end
animal = Animal.new("brown")
puts "The new animal is " + animal.color
animal.color = "red"
puts "Now the new animal is " + animal.color



Ruby gives you a quick way to create writable attributes with attr_writer

class Animal
  attr_reader :color
  attr_writer :color
  def initialize(color)
    @color = color
  end
end
animal = Animal.new("brown")
puts "The new animal is " + animal.color
animal.color = "red"
puts "Now the new animal is " + animal.color