1:类和对象
在Ruby中,通过向类发送new消息实例化一个已经存在的对象
irb(main):037:0> class Car
irb(main):038:1> end
=> nil
irb(main):039:0> kitt = Car.new
=> #<Car:0x57d0dc0>
2:对象层功能
2.1实例变量
由前缀@号标识
irb(main):001:0> class Car
irb(main):002:1> @mileage=0
irb(main):003:1> end
=> 0
irb(main):004:0> kitt=Car.new
=> #<Car:0x6c31990>
2.2实例方法
由def关键字定义,end关键字结尾
irb(main):001:0> class Car
irb(main):002:1> def open_trunk
irb(main):003:2> puts "open_trunk"
irb(main):004:2> end
irb(main):005:1> end
=> nil
irb(main):006:0> kitt = Car.new
=> #<Car:0x6d027d4>
irb(main):007:0> kitt.open_trunk
open_trunk
=> nil
irb(main):008:0>
2.3方法方法
访问方法是一种特殊类型的实例方法,用来读写实例变量。有 “读方法” 和 “写方法”
irb(main):001:0> class Car
irb(main):002:1> @mileage=0
irb(main):003:1> def set_mileage(x)
irb(main):004:2> @mileage=x
irb(main):005:2> end
irb(main):006:1> def get_mileage
irb(main):007:2> @mileage
irb(main):008:2> end
irb(main):009:1> end
kitt.set_mileage(1234)
kitt.get_mileage
此类可以进行优化:设置访问方法和属性具有相同的名字
irb(main):001:0> class Car
irb(main):002:1> @mileage=0
irb(main):003:1> def mileage(x)
irb(main):004:2> @mileage=x
irb(main):005:2> end
irb(main):006:1> def mileage
irb(main):007:2> @mileage
irb(main):008:2> end
irb(main):009:1> end
kitt.mileage = 6032 #set value
kitt.mileage #getvalue