我們舉一例如下
class Demo def set(a = 22, b = 33) @a = a @b = b end def do_something() @a + @b end end puts d = Demo.new d.set puts d.do_something() d.set(11, 22) puts d.do_something() puts =begin 《程式語言教學誌》的範例程式 http://pydoing.blogspot.com/ 檔名:classdemo.rb 功能:示範 Ruby 程式 作者:張凱慶 時間:西元 2012 年 12 月 =end
此例中的 Demo 類別的 set 方法定義兩個實體變數 @a 與 @b ,亦有兩個參數 a 與 b ,同時設定 a 的初值為 22 , b 的初值為 33 ,然後將 a 設定給 @a , b 設定給 @b
def set(a = 22, b = 33) @a = a @b = b end
另外定義一個 do_something() 方法,回傳 @a 與 @b 的相加值
def do_something() @a + @b end
建立新物件呼叫 new 方法,然後呼叫 do_something 兩次,第二次之前呼叫 set 重新設定 @a 與 @b 之值
puts d = Demo.new d.set puts d.do_something() d.set(11, 22) puts d.do_something() puts
執行看看結果吧
定義類別很簡單吧!我們將發展一個 Encrypt 類別,利用 Encrypt 物件進行編碼、解碼的工作,在此之前,我們先來想想密碼表該怎麼製作出來咧!這就需要用到陣列 (array) 了。
中英文術語對照 | |
---|---|
類別 | class |
物件 | object |
關鍵字 | keyword |
類別變數 | class variable |
實體變數 | instance variable |
方法 | method |
陣列 | array |
您可以繼續參考
基礎篇
相關目錄
回 Ruby 入門指南
回 Ruby 教材
回首頁
參考資料
http://www.rubyist.net/~slagell/ruby/classes.html
http://www.ruby-doc.org/docs/ProgrammingRuby/html/tut_classes.html
沒有留言:
張貼留言