標籤:style blog color 使用 java sp div c on
Ruby是一種物件導向程式設計語言,這意味著它操縱的編程結構稱為"對象"
先上代碼, 瞭解類的定義與使用方式
class Computer $manufacturer = "Mango Computer, Inc." @@files = {hello: "Hello, world!"} def initialize(username, password) @username = username @password = password end def current_user @username end def self.display_files @@files endend# Make a new Computer instance:hal = Computer.new("Dave", 12345)puts "Current user: #{hal.current_user}"# @username belongs to the hal instance.puts "Manufacturer: #{$manufacturer}"# $manufacturer is global! We can get it directly.puts "Files: #{Computer.display_files}"# @@files belongs to the Computer class.---------------------------------------------------------------------輸出:Current user: DaveManufacturer: Mango Computer, Inc.Files: {:hello=>"Hello, world!"}nil
類的定義
class Computer #class magic here end
根據Ruby命名規範, 類的名稱第一個字母要大寫,之後每個單詞的首字母大寫, 兩個單詞之間不再用底線_分隔
class Computer def initialize endend
觀察上面類的定義, 類中出現了initialize這個方法, 這個方法用來初始化類的對象,如果沒用這個方法,對象就無法產生對象。(對應於c++/java的建構函式)
class Computer $manufacturer = "Mango Computer, Inc." @@files = {hello: "Hello, world!"} def initialize(username, password) @username = username @password = password endend
在Ruby的世界裡, 我們用在一個變數名前加上@表示這個變數是一個執行個體變數,這意味著這個變數只能被類的執行個體所訪問。
局部變數只作用於某個具體的方法中。
變數名前有兩個@, 即@@的變數,叫做類變數,它並不屬於類的執行個體,而是屬於類自身(類似C++中的static變數)。
全域變數有兩種定義方式, 一種是定義在所有類和方法之外。如果你想把全域變數放入類中, 那麼採用另一種定義方式,在變數名之間加上$。
Ruby類的建立與使用