一、類的定義、類的例項方法
二、特定物件的方法
在ruby裡,我們可以為乙個物件單獨定義方法
三、重定義方法
從下面**可以看出,後面的定義會覆蓋前面的定義
四、重新開啟類
ruby裡我們可以再開啟乙個類,向這類新增方法,有點像c#裡的分部類,但不用加特別標記.
我們一般不要拆開類的定義,因為那樣不好理解,拆開類的乙個原因是將它們分散到多個檔案裡。
五、例項變數
這個前面有說過,這裡補充一下
例項變數主要是用來記錄單個物件的狀態。ruby的例項變數有以下特點
六、初始化物件狀態
類似其它語言的建構函式
七、更好的屬性讀寫,=號的威力
上面我們可以看到可以用多種方法對屬性都寫操作,但最熟悉和方便的,還是向其它語言一樣,對屬性直接賦值,然後讀取
語法糖語法糖就是指特別的規則,不符合常規的寫法,ruby提供了呼叫寫方法的語法糖,當直譯器看到age = 時,會忽略等號前面的空格,並且單引數的方法是可以省略括號,所以也可以這樣
因為有了=的威力,我們可以在賦值時做自己的處理,有點像.net裡的
八、自動生成屬性的讀寫操作attr_*
如果每個簡單的屬性都像上面那樣定義,是一件很繁瑣的事情,還好ruby提供了自動生成讀寫操作的方法,看下表
方法名效果例子等價的**
attr_reader
讀方法attr_reader :age
def age
@age
endattr_writer
寫方法attr_writer :price
def age= (age)
@age=age
endattr_accessor
產生讀寫方法
att_accessor :age
def age
@age
enddef age= (age)
@age=age
endattr
產生讀方法和可選的寫方法(如果第二個引數是true)
1. attr :age
2. attr :age, true
1. 參見attr_reader
2. 參見attr_accessor
九、類方法
類是特殊的物件,是唯一可以建立新物件的一類物件
定義是,在方法前加上類名
類方法有兩種呼叫方式:
十、繼承
ruby裡用 < 實現繼承
一步一步學Ruby 十二 Ruby類
一 類的定義 類的例項方法 二 特定物件的方法 在ruby裡,我們可以為乙個物件單獨定義方法 三 重定義方法 從下面 可以看出,後面的定義會覆蓋前面的定義 四 重新開啟類 ruby裡我們可以再開啟乙個類,向這類新增方法,有點像c 裡的分部類,但不用加特別標記.我們一般不要拆開類的定義,因為那樣不好理...
一步一步學Ruby 一 Ruby介紹
文章摘要 ruby是如何來的 ruby 的發明者松本行弘 yukihiro matz matsumoto,混合了他喜歡的語言 perl smalltalk eiffel ada 和 lisp 產生了一種具有函式式及指令程式設計特性的新語言。他常說,他是 試著讓 ruby 更自然,而不是簡單,就像生活...
一步一步學Ruby 一 Ruby介紹
文章摘要 ruby是如何來的 ruby 的發明者松本行弘 yukihiro matz matsumoto,混合了他喜歡的語言 perl smalltalk eiffel ada 和 lisp 產生了一種具有函式式及指令程式設計特性的新語言。他常說,他是 試著讓 ruby 更自然,而不是簡單,就像生活...