Ruby.on.Rails.Web开发之旅-3-在ruby中使用面向对象编程

本文介绍Ruby语言中的面向对象编程概念,包括类与对象的创建、实例变量与方法的应用及访问方法的实现方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值