attr_reader,attr_writer和attr_accessor

# -*- coding: UTF-8 -*-
#E4.3-1.rb  
class Person
  
  def initialize( name,age=18 )
    @name = name
    @age = age
    @motherland = "China"
  end
  
  def talk
    puts "my name is "+@name+", age is "+@age.to_s
    if  @motherland == "China"
      puts "I\'m Chinese."
    else
      puts "I\'m foreigner."
    end
  end
  
  attr_writer :motherland
  attr_writer :age
  attr_reader :age

  
end

p1=Person.new("kaichuan",20)
p1.talk
puts "\n========================="
p2=Person.new("Ben")
p2.motherland="ABC"
p2.age=200
p2.talk
puts p2.age.to_s



=begin
my name is kaichuan, age is 20
I'm Chinese.

=========================
my name is Ben, age is 200
I'm foreigner.
200
=end

 

posted @ 2017-04-21 17:31  sky20080101  阅读(92)  评论(1)    收藏  举报