Ruby 入門指南 - 類別

類別 (class) 用來設計自己需要的物件 (object) ,這是說,類別是物件的模板。 Ruby 中設計類別使用關鍵字 (keyword) class ,裡頭可定義類別的類別變數 (class variable) 、實體變數 (instance variable) 與方法 (method)




我們舉一例如下
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 ,亦有兩個參數 ab ,同時設定 a 的初值為 22 , b 的初值為 33 ,然後將 a 設定給 @ab 設定給 @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

沒有留言: